Docker Compose与Docker Stack
Docker Compose能够在Docker节点上以单引擎模式进行多容器应用的部署和管理,而Docker Stack则是以swarm模式对Docker节点上的多容器进行部署和管理。本文主要介绍Docker Compose,Docker Stack介绍见:
Docker Compose简介
Docker Compose通过一个声明式的配置文件描述整个应用,从而使用一条命令完成部署、管理等,解决了部署和管理繁多服务的麻烦。
Docker Compose前身是Fig,是基于Docker的Python工具,由Orchard公司开发,后被Docker公司收购,目前Docker Compose仍需要在Docker主机上安装外部Python工具。使用时首先编写多容器应用的YAML文件,然后交由docker-compose命令处理。
Docker Compose命令
- docker-compose up:用于部署一个Compose应用,默认情况会读取名为docker-compose.yml或者docker-compose.yaml文件,
-f
指定其他文件名,-d
指定后台启动 - docker-compose stop:停止Compose应用相关所有的容器,但不会删除
- docker-compose rm:删除已停用的Compose应用,它会删除容器和网络,但不会删除卷和镜像
- docker-compose restart:重启已停用的Compose应用,如果用户在停止应用后对其更改,变更内容不会反映在重启后的应用中,这时需要重新部署应用使其生效
- docker-compose ps:列出Compose应用的各个容器,输出当前状态,容器运行命令及网络端口
- docker-compose down:停止并删除运行中的Compose应用,会删除容器和网络,但不会删除卷和镜像
Docker Compose实践
本文部署Spring Boot+Redis应用,实现简单计数功能。