Docker-Compose发布与部署
上节我们跑了两个容器:Web 项目 + Redis。依赖的第三方软件越多,要管的容器就越多,每个都要单独配置、指定网络。这节用 docker-compose 把多个服务写进一份描述,一键跑起来,并演示发布到阿里云镜像仓库。
系列前文:
一、安装 Docker Compose
-
桌面版 Docker 已经包含 Compose,不用额外安装。 -
没有图形界面的服务器版 Docker,需要单独安装,见 安装文档。 -
运行 docker-compose检查是否安装成功。
二、编写脚本
项目示例:D:\projects\workspace_web\GuoguWebadmin。要把依赖的多个服务集合到一起,编写 docker-compose.yml 描述依赖哪些服务。参考文档:https://docs.docker.com/compose/
容器默认时间不是北京时间,增加 TZ=Asia/Shanghai 可以改为北京时间。
三、跑起来
在 docker-compose.yml 所在目录执行 docker-compose up 就可以跑起来。命令参考:https://docs.docker.com/compose/reference/up/
| 步骤 | 做什么 |
|---|---|
| 安装 Compose | 桌面版自带;服务器版按官方文档安装,docker-compose 验一下 |
| 写 yml | 描述 app、mysqldb 等服务、端口、环境变量和卷 |
| 启动 | 在 yml 目录执行 docker-compose up |
| 发布 | tag 后 push 到镜像仓库(可用阿里云) |
四、发布和部署
镜像仓库介绍
镜像仓库用来存储 build 出来的「安装包」。Docker 官方提供了一个 镜像库,里面包含大量镜像,各种软件依赖基本都能搜到。
也可以把自己 build 的镜像上传到官方镜像库方便传播;或者搭建私有镜像库,或使用国内大厂的镜像托管,例如阿里云、腾讯云。
阿里云容器托管
官方镜像托管有时上传下载太慢,可以用阿里云的免费镜像托管。登录 阿里云:


推送镜像:
拉取:用同样的仓库地址 docker pull 即可。
一句话总结:用 docker-compose.yml 把 app 和依赖服务一次拉起;镜像用 tag + push 发到阿里云仓库,方便部署。
转载请注明来源:Docker-Compose发布与部署








