概述
docker-compose是Docker官方提供的工具,允许开发者通过一个单独的文件和简单的命令来启动、停止和管理多个容器环境。
有了Docker,我们可以通过Docker的Shell命令来创建容器,如下示例:
css
docker run --name mysql -p 3306:3306 -itd -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7.20
这是创建一个MySQL容器的命令,内容很简单,但是有时候我们需要对容器有更多的配置,那么Shell命令会显得很复杂,并且不好修改,这里是RabbitMQ容器的Shell示例:
ini
docker run --name myrabbit \
-p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883 \
-itd --restart=always \
-v /etc/localtime:/etc/localtime \
-v /application/containers/myrabbit/var/lib/rabbitmq:/var/lib/rabbitmq \
--net mynetwork \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=123456 \
rabbitmq:management
这种Shell脚本的方式有一些不足:
- 命令过长时不好管理和阅读
- 多容器同时启动时,无法实现依赖启动
简单说,就是很难做到可以一键部署,而有了docker-compose这个官方工具,这些问题就能迎刃而解。
离线安装包准备
docker-compose离线包:github.com/docker/comp...
本文选择的版本是:docker-compose-linux-x86_64
安装
准备好离线包后,执行以下命令即可:
bash
sudo cp docker-compose-linux-x86_64 /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose -v
也就是把docker-compose的可执行文件放到CentOS的/usr/local/bin下,成为系统的可执行文件,如果是在Ubuntu,路径就要改成Ubuntu的/usr/bin下,这也是不同发行版间使用Docker的区别之一。
卸载docker-compose
bash
rm -rf /usr/local/bin/docker-compose