11-docker系列-docker之compose安装和相关命令
Posted 公号运维家
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了11-docker系列-docker之compose安装和相关命令相关的知识,希望对你有一定的参考价值。
声明:本文乃“运维家”原创,转载请注明出处,更多内容请关注公众号“运维家”。
主旨
有没有想过如果docker容器越来越多呢?几十上百呢?我们如果单纯靠命令来操作,有点儿不太现实,咱们这边就简单的来介绍一个compose的方式,使用 Docker Compose 可以轻松、高效的管理容器,它是一个用于定义和运行多容器 Docker 的应用程序工具。
环境
linux环境
docker环境
安装compose
[yunweijia@localhost ~]$ sudo yum -y install epel-release
[yunweijia@localhost ~]$ sudo yum makecache
[yunweijia@localhost ~]$ sudo yum install python-pip -y
[yunweijia@localhost ~]$ sudo pip install docker-compose
# 如果报错了,那么我们执行下
[yunweijia@localhost ~]$ sudo pip install --upgrade pip
# 如果还报错,那么我们执行如下,下面这条命令记得根据你实际情况来,错误信息都会有提示,注意看下
[yunweijia@localhost ~]$ sudo /usr/local/python3/bin/python3.7 -m pip install --upgrade pip
此时我们再次运行即可:
[yunweijia@localhost ~]$ sudo pip install docker-compose
查看安装的版本:
[yunweijia@localhost ~]$ sudo docker-compose version
docker-compose version 1.29.2, build unknown
docker-py version: 5.0.3
CPython version: 3.7.1
OpenSSL version: OpenSSL 1.0.2k-fips 26 Jan 2017
[yunweijia@localhost ~]$
修改sudo的环境变量:
PS:如果你本来就是root用户,则不需要此步骤。
[yunweijia@localhost nginx]$ sudo which docker-compose
/usr/local/python3/bin/docker-compose
[yunweijia@localhost nginx]$ sudo vim /etc/sudoers
# 下面这行最后以冒号分隔开,然后t添加上自己上一条命令查出来的地址
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/python3/bin
# 输入 :wq! 退出
[yunweijia@localhost nginx]$
配置文件
docker-compose可以有多个配置文件,因为当你使用compose执行命令的时候,默认读取的是当前目录中的“docker-compose.yml”文件,当然了,你也可以使用 -f 单独指定,这样子我们也可以根据我们实际情况写出来好几个compose的配置文件,也就相当于某几个容器特制成同一批。
docker-compose常用命令
这里当然不止这几个命令,但是这几个是常用的,具体的还是要看官网介绍。
# 后台启动容器
docker-compose up -d
# 列出所有运行容器
docker-compose ps
# 查看服务日志输出
docker-compose logs
# 启动指定服务已存在的容器
docker-compose start
# 停止已运行的容器
docker-compose stop
# 构建或者重新构建服务
docker-compose build
# 打印绑定的公共端口,下面命令可以输出 nginx 服务 80 端口所绑定的公共端口
docker-compose port nginx 80
# 删除指定服务的容器
docker-compose rm
# 通过发送 SIGKILL 信号来停止指定服务的容器
docker-compose kill
# 在一个服务上执行一个命令
docker-compose run web bash
compose简单操作容器
语法:
docker-compose up -d # 后台启动容器
docker-compose ps # 查看容器
docker-compose stop # 停止容器
[yunweijia@localhost ~]$ mkdir -pv docker/compose/nginx
mkdir: 已创建目录 "docker/compose"
mkdir: 已创建目录 "docker/compose/nginx"
[yunweijia@localhost ~]$ cd docker/compose/nginx/
[yunweijia@localhost nginx]$ pwd
/home/yunweijia/docker/compose/nginx
[yunweijia@localhost nginx]$
[yunweijia@localhost nginx]$ touch docker-compose.yml
[yunweijia@localhost nginx]$ vim docker-compose.yml
version: "2"
services:
nginx:
image: nginx
[yunweijia@localhost nginx]$ sudo docker-compose up -d
Creating network "nginx_default" with the default driver
Creating nginx_nginx_1 ... done
[yunweijia@localhost nginx]$ sudo docker-compose ps
Name Command State Ports
---------------------------------------------------------------
nginx_nginx_1 /docker-entrypoint.sh ngin ... Up 80/tcp
[yunweijia@localhost nginx]$
本文完,下一篇我们将介绍下docker-compose文件里面参数如何进行配置,以及运行几个实例进行全方位讲解。
以上是关于11-docker系列-docker之compose安装和相关命令的主要内容,如果未能解决你的问题,请参考以下文章