docker-compose 详解及示例代码
docker-compose使用示例
利用docker搭建一个mysql + java service + nginx,总共4个docker容器,如果采用docker run的方式一个一个容器去创建十分麻烦。为了能更高效的批量创建容器,docker推出了docker-compose工具,只需要定义一个docker-compose.yml文件即可快速搞定一组容器的创建,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
mysql:
image: daocloud.io/yjmyzz/mysql-osx:latest
volumes:
- ./mysql/db:/var/lib/mysql
ports:
- 3306:3306
environment:
- MYSQL_ROOT_PASSWORD=123456
service1:
image: java:latest
volumes:
- ./java:/opt/app
expose:
- 8080
#ports:
# - 9081:8080
links:
- mysql:default
command: java -jar /opt/app/spring-boot-rest-framework-1.0.0.jar
service2:
image: java:latest
volumes:
- ./java:/opt/app
expose:
- 8080
#ports:
# - 9082:8080
links:
- mysql:default
command: java -jar /opt/app/spring-boot-rest-framework-1.0.0.jar
nginx1:
image: nginx:latest
volumes:
- ./nginx/html:/usr/share/nginx/html:ro
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
- ./nginx/conf.d:/etc/nginx/conf.d:ro
#expose:
# - 80
ports:
- "80:80"
links:
- service1:service1
- service2:service2
内容不复杂,具体的关键字说明见本文最后的参考文章链接。
问题:这个文件放在哪里?
参见下面的目录结构:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
mysql-java-nginx
├── docker-compose.yml
├── java
│ └── spring-boot-rest-framework-1.0.0.jar
├── mysql
│ └── db
└── nginx
├── conf
├── conf.d
│ └── default.conf
├── html
│ └── index.html
└── nginx.conf
创建容器:
1
2
cd mysql-java-nginx
docker-compose up
就是这么简单,一个up就搞定了所有容器的创建,up通常用于首次创建,可以观察终端实时输出的日志内容判断容器是否启动正常,如果没什么问题,直接Ctrl+C退出,然后
docker-compose start
以后台方式启动容器。
其它命令还有:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Commands:
build Build or rebuild services
help Get help on a command
kill Kill containers
logs View output from containers
pause Pause services
port Print the public port for a port binding
ps List containers
pull Pulls service images
restart Restart services
rm Remove stopped containers
run Run a one-off command
scale Set number of containers for a service
start Start services
stop Stop services
unpause Unpause services
up Create and start containers
migrate-to-labels Recreate containers to add labels
version Show the Docker-Compose version information
基本上看名字就知道意思了。
参考文章:
https://docs.docker.com/compose/compose-file/
相关热词: 详解
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://v30.fanwenzhu.com/server/other/7691.shtml
相关文章
热门TAG
win10 ecshop 主机 阿里云 解决 配置 C# C++ 解析 SQL语句 命令 Go语言 方法 CSS3 HTML5 CSS win7 MSSQL 服务器配置 IIS7.5 IIS7 IIS6 IIS CentOS 7 Linux oracle数据库 oracle phpcms discuz discuz教程最新文章
-
卸载后云锁网站无法会见
时间:2021-01-23
-
处事器安详软件云锁“及
时间:2021-01-23
-
CentOS 7安装Docker处事具体进
时间:2021-01-16
-
下一步: 选第一个
时间:2021-01-16
-
分区方案选择标准分区
时间:2021-01-16
-
VMware给虚拟机安装linux系统
时间:2021-01-16
-
安全软件不仅可以保护I
时间:2021-01-13
-
宝塔防火墙种种利害名单
时间:2021-01-13
热门文章
-
VirtualBox简体中文版下载安装(图解教程)
时间:2020-12-23
-
电商平台为什么要使用独立服务器托管?
时间:2020-12-22
-
基于Kubernetes和Docker实现留言簿案例
时间:2021-01-06
-
在virtualbox中安装CentOS7图文教程
时间:2020-12-22
-
网络安全之PKI技术原理
时间:2020-12-23
-
常见的云安全错误认知以及应对方法!
时间:2020-12-26
-
Docker Base Image自己创建具体实现
时间:2020-12-22
-
Windows系统中安装云锁服务器端的图文教程
时间:2020-12-25
-
VMware给虚拟机安装linux系统
时间:2021-01-16
-
云服务器/VPS/云主机/服务器修改登陆密码
时间:2020-12-22
