Docker(三) Docker Compose
Compose是Docker的服务编排工具,主要用来构建基于Docker的复杂应用,Compose 通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容器进行开发的场景。
话不多说,上干货!
首先安装 Compose
用户可登陆网址 https://github.com/docker/compose/releases/ 查看 Compose 最新版本并安装
安装 docker-compose
编写docker-compose.yml
准备工作 提前 pull 好 docker 镜像 (见docker(一))
编写docker-compose.yml文件
注释:
1.version : 描述compose版本,不写默认version 1 ,version 2 支持更多命令
2.sevices : 容器或服务
3.gitlab、jenkins:两个容器的名称
4.image:docker镜像,若启动时本地没有该镜像,docker会自动pull镜像
5.ports:端口映射
6.volumes : 挂载目录(还有好多有用的命令下一篇再描述)
启动应用
开启应用
停止应用
注:以上命令皆位于docker-compose同级目录下执行
话不多说,上干货!
首先安装 Compose
用户可登陆网址 https://github.com/docker/compose/releases/ 查看 Compose 最新版本并安装
安装 docker-compose
第一步 下载
root@ubuntu:/usr/local/bin# curl -L https://github.com/docker/compose/releases/download/1.18.0/
docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 617 0 617 0 0 86 0 --:--:-- 0:00:07 --:--:-- 164
第二步 修改权限
第三步 验证
卸载 。。。。。rm 就好了root@ubuntu:/usr/local/bin# chmod +x /usr/local/bin/docker-compose
第三步 验证
root@ubuntu:/usr/local/bin# docker-compose -version
docker-compose version 1.18.0, build 8dd22a9
编写docker-compose.yml
准备工作 提前 pull 好 docker 镜像 (见docker(一))
编写docker-compose.yml文件
version: '2'
services:
gitlab:
image: gitlab/gitlab-ce:8.17.8-ce.0
ports:
- "32010:22"
- "32011:443"
- "32012:80"
volumes:
- /data/gitlab/config:/etc/gitlab
- /data/gitlab/logs:/var/log/gitlab
- /data/gitlab/data:/var/opt/gitlab
jenkins:
image: jenkins:lx
ports:
- "32000:8080"
- "32001:50000"
volumes:
- /data/jenkins_home:/var/jenkins_home
1.version : 描述compose版本,不写默认version 1 ,version 2 支持更多命令
2.sevices : 容器或服务
3.gitlab、jenkins:两个容器的名称
4.image:docker镜像,若启动时本地没有该镜像,docker会自动pull镜像
5.ports:端口映射
6.volumes : 挂载目录(还有好多有用的命令下一篇再描述)
启动应用
root@ubuntu:/home/docker_compose# docker-compose up
Recreating dockercompose_gitlab_1 ...
Recreating dockercompose_gitlab_1 ... done
Attaching to dockercompose_jenkins_1, dockercompose_gitlab_1
gitlab_1 | Thank you for using GitLab Docker Image!
gitlab_1 | Current version: gitlab-ce=8.17.8-ce.0
gitlab_1 |
gitlab_1 | Configure GitLab for your system by editing /etc/gitlab/gitlab.rb file
gitlab_1 | And restart this container to reload settings.
gitlab_1 | To do it use docker exec:
gitlab_1 |
gitlab_1 | docker exec -it gitlab vim /etc/gitlab/gitlab.rb
gitlab_1 | docker restart gitlab
......
root@ubuntu:/home/docker_compose# docker-compose start
Starting jenkins ... done
Starting gitlab ... done
root@ubuntu:/home/docker_compose# docker-compose stop
Stopping dockercompose_gitlab_1 ... done
Stopping dockercompose_jenkins_1 ... done
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」