编排工具安装
本文为在linux系统中操作,首先是安装epel源。然后安装python的pip组件,利用pip安装docker-compose,在安装完毕后,可以使用查看版本命令以及帮助命令查看所支持的子命令。
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum install python-pip -y
pip install docker-compose
docker-compose version
docker-compose --help
编排工具使用
我们以haproxy挂载两个nginx为例子,首先,编辑一个编排文档,文档的后缀为yum。然后执行up命令把编排启动。整个命令执行见下。
vim docker-conmpse.yml
web1:
image: nginx
expose:
- 80
web2:
image: nginx
expose:
- 80
haproxy:
image: haproxy
volumes:
- /opt/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg
links:
- web1
- web2
ports:
- "7777:8080"
- "80:80"
wq!
docker-compose up
执行完毕后,可以通过浏览haproxy的站点统计页面查看运行情况。
编排工具语法
命令名称 | 含义 | 举例 |
image | 使用的镜像 | |
build | 指定Dockerfile构建 | version: '3' services: web: build: ./ |
command | 启动执行命令 | version: '3' services: web: build: ./ command: env |
links | 链接其他容器 | |
ports | 端口映射 | ports: - "8080:80" - "127.0.0.1:8080:80" |
expose | 暴露端口 | |
volumes | 挂载路径 | volumes: - ./conf.d:/etc/nginx/conf.d # nginx.conf对容器来说只读 - ./nginx.conf:/etc/nginx/nginx.conf:ro |
volumes_from | 从容器挂载 | |
environment | 环境变量 | environment: - RACK_ENV=development - SHOW=true - SESSION_SECRET |
编排工具常见命令列表
命令 | 命令说明 |
docker-compose up -d nginx | 构建建启动nignx容器 |
docker-compose exec nginx bash | 登录到nginx容器中 |
docker-compose down | 删除所有nginx容器,镜像 |
docker-compose ps | 显示所有容器 |
docker-compose restart nginx | 重新启动nginx容器 |
docker-compose run --no-deps --rm php-fpm php -v | 在php-fpm中不启动关联容器,并容器执行php -v 执行完成后删除容器 |
docker-compose build nginx | 构建镜像 。 |
docker-compose build --no-cache nginx | 不带缓存的构建。 |
docker-compose logs nginx | 查看nginx的日志 |
docker-compose logs -f nginx | 查看nginx的实时日志 |
docker-compose config -q |
验证(docker-compose.yml)文件配置,当配置正确时,不输出任何内容,当文件配置错误,输出错误信息。 |
docker-compose events --json nginx | 以json的形式输出nginx的docker日志 |
docker-compose pause nginx | 暂停nignx容器 |
docker-compose unpause nginx | 恢复ningx容器 |
docker-compose rm nginx |
删除容器(删除前必须关闭容器) |
docker-compose stop nginx | 停止nignx容器 |
docker-compose start nginx | 启动nignx容器 |
如果您喜欢这篇文章,别忘了点赞和评论哦!