版权所有,未经许可,禁止转载
实际项目中,通常会有很多容器同时运行,逐个启动这些容器会很繁琐。Docker Compose通过docker-compose.yml
配置文件,可以非常轻松地,用一个命令启动这些容器。例如,假设你有一个需要NGNIX和PHP的应用程序,就可以使用docker-compose一次启动这2个容器。
安装 dockers-compose的步骤如下
在Linux CentOS系统下,下载docker-compose。其他系统安装可参考官网
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
上面的命令将下载docker-compose的最新版(当前是1.24.0),最新版可查看官网
sudo chmod +x /usr/local/bin/docker-compose
查看docker-compose版本号
sudo docker-compose --version
docker-compose version 1.24.0, build 0aa59064
顺利打出版本号,安装成功。
我们将使用docker-compose一次启动nginx与php两个容器。
创建docker-compose.yml配置文件:
version: '3'
services:
# nginx 服务
nginx:
# 推荐使用官方镜像
image: nginx:latest
# 映射端口,把容器端口映射到宿主机对外接口,格式:对外端口:容器端口
ports:
- "80:80"
- "443:443"
# 所依赖的服务,php会先启动
depends_on:
- php
# php 服务
php:
# 官方镜像
image: php:7-fpm
docker-compose.yml是一个YAML文件,语法很简单。
我们把上面的文件分解一下。在父级,我们定义服务的名称:nginx
和php
,nginx
服务使用镜像nginx:latest
,php
服务使用镜像php:7-fpm
。ports
参数可以定义服务的端口映射。详细信息,请看注释。
先确保docker服务已经运行:
$ sudo service docker start
运行docker-compose,切换到docker-compose.yml所在的目录执行
$ sudo docker-compose up -d
会自动下载nginx与php镜像,然后运行这两个容器。
通过docker ps
查看nginx与php容器是否运行:
[root@qikegu deploly]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
042328b082a4 nginx:latest "nginx -g 'daemon of…" 33 seconds ago Up 31 seconds 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp deploly_nginx_1
9d0b67f869ee php:7-fpm "docker-php-entrypoi…" 34 seconds ago Up 33 seconds 9000/tcp deploly_php_1
可以看到容器确实已经运行了。
原文:https://www.cnblogs.com/jinbuqi/p/11186848.html