使用Docker Compose高效部署Nexus3:从零到实战配置指南

1. 为什么选择 Docker Compose 来部署 Nexus3?

如果你是一个开发者,或者是一个小团队的运维,我猜你一定遇到过这样的场景:项目依赖的某个公共镜像仓库突然抽风,下载速度慢得像蜗牛,或者干脆连不上,整个团队的开发进度瞬间被卡住。又或者,公司内部有一些不能公开的、自己封装的组件或镜像,需要一个安全可靠的地方来存放和管理。这时候,一个私有的、自己掌控的制品仓库就显得尤为重要了。

Nexus Repository Manager 3(我们常说的 Nexus3)就是解决这个问题的“瑞士军刀”。它不仅仅能管 Maven 的 Jar 包,还能管 Docker 镜像、NPM 包、PyPI 包等等,几乎覆盖了现代软件开发的所有主流制品类型。功能是强大,但传统的部署方式往往让人头疼:需要准备服务器、安装 Java 环境、配置数据库、处理各种权限和路径……一套流程下来,半天时间就没了,而且一旦服务器环境有点差异,还可能踩进各种坑里。

这就是 Docker Compose 出场的时候了。我用了这么多年,最大的感受就是:它把部署从“手工艺术品”变成了“标准化工业品”。你不再需要关心 Nexus3 到底依赖哪些底层的系统库,也不用担心不同服务器上 Java 版本不一致导致的问题。Docker 镜像已经把应用和它的运行环境打包成了一个完整的、可移植的单元。而 Docker Compose,就是用一份简单的配置文件(docker-compose.yml),来定义和运行这个单元,并且把相关的配置(比如端口、数据目录、环境变量)都白纸黑字地写下来。

这么做的好处太多了。首先是可重复性:今天你在自己的笔记本上测试成功了,明天把这份配置文件扔到公司的测试服务器、生产服务器,甚至云服务器上,都能一键启动,得到一模一样的环境。其次是管理便捷:启动、停止、重启、查看日志,全是一两条命令的事,再也不用记一堆复杂的服务管理命令。最后是学习成本低:你不需要先成为 Nexus3 的配置专家,就能快速把它跑起来,先用起来,再根据实际需求去深入调整,这种“边用边学”的体验对新手特别友好。

所以,这篇指南的目的,就是带你用最省心、最高效的方式,把 Nexus3 私服搭建起来。我会把我自己踩过的坑、优化过的配置都分享出来,你只要跟着步骤一步步来,半小时内就能拥有一个完全受自己控制的私有仓库。

2. 部署前的准备工作:打好地基

老话说得好,磨刀不误砍柴工。在真正运行 docker-compose up 之前,花几分钟把基础环境理顺,能避免后面 99% 的莫名其妙的问题。这部分我们分两步走:一是确保 Docker 和 Docker Compose 本身没问题;二是规划好我们的部署目录结构。

2.1 确保 Docker 环境就绪

首先,你需要一台 Linux 服务器。我这里以 CentOS 7.x 为例,这也是很多企业里比较常见的环境。当然,Ubuntu、Debian 或者任何你熟悉的发行版都可以,Docker 的安装命令略有不同,但核心步骤是一致的。

第一步,登录你的服务器,检查 Docker 是否已经安装。打开终端,输入:

docker --version
docker-compose --version

如果能看到具体的版本号输出,比如 Docker version 26.1.4Docker Compose version v2.27.1,那么恭喜你,可以跳过安装步骤。如果提示命令未找到,那就需要先安装它们。

安装 Docker: 对于 CentOS 7,可以执行以下命令。这里我建议使用官方源安装,比较稳妥。

# 卸载旧版本(如果有的话)
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

# 安装必要的依赖包
sudo yum install -y yum-utils

# 设置稳定的 Docker 仓库(这里使用阿里云镜像加速)
sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 安装 Docker 引擎
sudo yum install -y docker-ce docker-ce-cli containerd.io

# 启动 Docker 并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker

# 验证安装,运行一个 hello-world 镜像
sudo docker run hello-world

看到 Hello from Docker! 的输出,说明 Docker 安装成功了。

安装 Docker Compose: 现在 Docker 官方推荐使用 docker compose(注意是空格,不是横杠)这个插件形式,而不是独立的 docker-compose 二进制文件。安装方法如下:

# 下载最新的 docker-compose 插件
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname%20-s)-$(uname%20-m)" -o /usr/local/bin/docker-compose

# 赋予执行权限
sudo chmod +x /usr/local/bin/docker-compose

# 验证安装
docker-compose --version

这里有个小细节:docker compose 插件需要 Docker 引擎版本在 20.10.13 以上。如果你遇到问题,也可以选择安装传统的 V1 版本,但新项目建议直接用 V2 插件,它是未来的方向。

2.2 规划你的部署目录

这是一个很多人会忽略,但极其重要的好习惯。不要把容器随便扔在某个目录下,而是建立一个清晰、统一的目录结构来管理所有容器。我个人的习惯是在 /home 或者 /opt 下创建一个 docker 目录,然后每个服务都在其下拥有自己独立的子目录。

这样做的好处是:

  1. 一目了然:所有容器服务都在一起,方便管理和备份。
  2. 权限清晰:可以将这个目录的所有权赋予某个管理用户,避免一直使用 root。
  3. 数据安全:通过子目录挂载数据卷,数据文件不会散落各处。

按照这个思路,我们来创建 Nexus3 的专属目录:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值