一、Docker Compose 介绍
Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。它使用 YAML 文件来配置应用程序的服务,然后使用一个命令来启动并运行所有服务。Docker Compose 适合开发、测试和生产环境。
二、Harbor 安装与使用
安装前提
- 确保 Docker 已安装。
- 确保 Docker Compose 已安装。
安装步骤
-
下载 Harbor 安装包
- 从官网或私有源下载 Harbor 离线安装包,例如
harbor-offline-installer-v2.8.3.tgz
。
- 从官网或私有源下载 Harbor 离线安装包,例如
-
解压安装包
tar xf harbor-offline-installer-v2.8.3.tgz cd harbor
-
配置 Harbor
- 复制并编辑
harbor.yml.tmpl
为harbor.yml
。 - 修改
hostname
和http
端口等配置。
- 复制并编辑
-
运行安装脚本
./install.sh
-
验证安装
- 访问 Harbor Web 界面(通常是
http://<hostname>:<port>
)。 - 默认用户名为
admin
,密码在harbor.yml
文件中指定(如未修改则为Harbor12345
)。
- 访问 Harbor Web 界面(通常是
使用 Harbor
- 创建项目和用户
- 在 Harbor Web 界面中创建项目(如
sanchuang
)。 - 创建用户(如
feng
),并分配项目管理员权限。
- 在 Harbor Web 界面中创建项目(如
- 上传镜像
- 在其他 Docker 宿主机上,修改
daemon.json
以包含 Harbor 的地址。 - 重启 Docker 服务。
- 使用
docker login
登录到 Harbor。 - 使用
docker push
上传镜像到 Harbor。
- 在其他 Docker 宿主机上,修改
- 下载镜像
- 在其他 Docker 宿主机上登录 Harbor。
- 使用
docker pull
从 Harbor 下载镜像。
三、制作和上传 Docker 镜像
示例:制作 Nginx 镜像并上传至 Harbor
-
准备 Dockerfile 和其他文件
- 编写 Dockerfile。
- 准备其他需要的文件,如配置文件、脚本等。
-
构建镜像
docker build -t scnginx:1.2 .
-
标记镜像以便上传
docker tag scnginx:1.2 192.168.203.128:80/sanchuang/scnginx:1.2
-
上传镜像至 Harbor
docker push 192.168.203.128:80/sanchuang/scnginx:1.2
-
在其他机器上下载并运行镜像
- 登录 Harbor。
- 使用
docker pull
下载镜像。 - 运行容器。
四、更新镜像版本
示例:更新 hnweb 应用至 2.0 版本
-
修改应用代码
- 修改
app.py
或其他源代码文件。
- 修改
-
(可选)修改 Dockerfile
- 如果需要,可以更新 Dockerfile 以包含新的构建步骤或依赖项。
-
构建新版本的镜像
docker build -t hnweb:2.0 .
-
标记并上传至 Harbor
docker tag hnweb:2.0 192.168.203.128:80/sanchuang/hnweb:2.0 docker push 192.168.203.128:80/sanchuang/hnweb:2.0
-
在其他环境中更新和部署
- 下载新版本的镜像。
- 停止旧版本的容器。
- 运行新版本的容器。
通过以上步骤,您可以有效地管理和部署 Docker 容器化应用,利用 Docker Compose 和 Harbor 简化开发和运维流程。