这章以实例为主,学习他的语法,以及docker-compose的使用思路。下面简单的例子可以通过docker-compose官网获得。该🌰涉及的语法不是全部,但是理解他的设计架构后后面的一些参数也能自行学习了。
Docker-compos默认使用docker-compose.yml为文件名,或者用-f参数指定定义文件。
Docker-compose使用YAML文件来定义多服务应用
,YAML是json的子集,所以也可以用json编写。
下面的例子包含两个服务:web-fe 和 redies 。此例子用来运行一个对访问者计数并保存到redies的简单web服务,🌰如下。
version: '3.5'
services:
web-fe:
build: .
command: python app.py
ports:
- target: 5000
published: 5000
networks:
- counter-net
volumes:
- type: volume
source: counter-vol
target: /code
redis:
image: "redis:alpine"
networks:
counter-net:
networks:
counter-net:
volumes:
counter-vol:
上述例子包含4个一级key:
bridge网络
,该网络是一种单主机网络,只能实现同一个主机上容器连接。(计算机网络基础是真的薄弱,后面会更新计算机网络的博客,暂时用下面张图理解下桥接)networks:
over-net:
driver: overlay
attachable: true
接着分析一级key下面的描述
如何看数据卷存放位置
,执行docker volume inspect [卷标名称]就可以看到。docker-compose定义完毕后,接下来就看如何利用命令行进行使用吧。
docker-compose up
docker-compose -f xxxxxx.yml up
.执行完毕后查看的镜像:
查看启动的容器:
查看网络:
查看数据卷:
至此,应用部署完毕。
关闭删除应用:docker-compose down
显示服务内运行的进程:docker-compose top
停止应用docker-compose stop
docker-compose rm 应用名
重启应用:docker-compose restart
————————————————————————————————————————
end:
晚安! my lovers,有你们狠幸福。