Docker-Compose操作简述
Docker-Compose操作简述一、部署安装1、二进制docker容器部署包2、docker-compose包3、docker images包#!/bin/bash## qjzhao 2021/08/25sed -i "s/=enforcing/=disabled/g" /etc/selinux/configecho "-----configure docker.service-----"cp
·
Docker-Compose操作简述
一、部署安装
1、二进制docker容器部署包
2、docker-compose包
3、docker images包
#!/bin/bash
## qjzhao 2021/08/25
COLOR="echo \\033[31m"
END="\033[0m"
sed -i "s/=enforcing/=disabled/g" /etc/selinux/config
echo "-----configure docker.service-----"
cp ./docker.service /etc/systemd/system/
sleep 1
systemctl enable docker.service
sleep 1
chmod +x /etc/systemd/system/docker.service
sleep 1
systemctl daemon-reload
sleep 1
systemctl enable docker.service
echo "-----docker.service configure end-----"
$COLOR "start install docker-compose" $END
mv docker-compose-Linux-x86_64 /usr/bin
mv /usr/bin/docker-compose-Linux-x86_64 /usr/bin/docker-compose
sleep 1
chmod 775 /usr/bin/docker-compose
sleep 1
docker-compose --version
$COLOR "docker-compose install end" $END
echo "-----docker start install-----"
chmod -R 775 ./docker/*
sleep 1
cp ./docker/* /usr/bin
sleep 1
systemctl enable docker.service
sleep 1
systemctl start docker
echo "-----docker install end-----"
echo "-----version-----
docker info
sleep 1
docker-compose version
手工配置容器ip地址:
echo "-----configure IP-----"
cat >/etc/docker/daemon.json << EOF
{
"data-root":"/home/docker",
"debug":true,
"default-address-pools":[
{
"base":"192.1.0.0/16",
"size":24
}]
}
EOF
echo "-----configure IP end -----"
二、YML文件
ym文件示范:
version: "3"
services:
nginx:
container_name: nginx
image: nginx
#env_file:
# volumes:
# - ./nginx.conf:/usr/local/nginx/conf.d/nginx.conf
# 配置文件映射
ports:
- "80:80"
restart: always
三、常用命令
常用命令:
3.1 docker-compose up
启动所有服务
3.2 docker-compose up -d
#在后台启动所有服务
3.3 docker-compose down
#停止和删除容器、网络、卷、镜像
3.4 docker-compose stop
#停止正在运行的容器,可以通过docker-compose start 再次启动
3.5 docker-compose start
3.16 docker-compose -f xxx.yml up -d
#指定服务yml启动服务
3.7 docker-compose -f xxx.yml down
#停止和删除容器、网络、卷、镜像
3.8 docker-compose logs
#查看日志
3.9 docker-compose build
构建(重新构建)项目中的服务容器
docker-compose build [options] [--build-arg key=val...] [SERVICE...]
选项包括:
–compress 通过gzip压缩构建上下环境
–force-rm 删除构建过程中的临时容器
–no-cache 构建镜像过程中不使用缓存
–pull 始终尝试通过拉取操作来获取更新版本的镜像
-m, –memory MEM为构建的容器设置内存大小
–build-arg key=val为服务设置build-time变量 服务容器一旦构建后,将会带上一个标记名。
可以随时在项目目录下运行docker-compose build来重新构建服务
3.10 docker-compose pull
`docker-compose pull [options] [SERVICE...]`
拉取服务依赖的镜像
选项包括:
–ignore-pull-failures,忽略拉取镜像过程中的错误
–parallel,多个镜像同时拉取
–quiet,拉取镜像过程中不打印进度信息
3.10.1 docker-compose restart
docker-compose restart [options] [SERVICE...]
docker-compose restart 重启项目中的服务
选项包括 -t, –timeout TIMEOUT 停止容器时候的超时(默认为10秒)
3.11 docker-compose rm
删除所有(停止状态的)服务容器
docker-compose rm [options] [SERVICE...]
选项包括:
–f, –force,强制直接删除,包括非停止状态的容器
-v,删除容器所挂载的数据卷
docker-compose rm 删除所有(停止状态的)服务容器。推荐先执行docker-compose stop命令来停止容器。
3.11.1 docker-compose start
docker-compose start 启动已经存在的服务容器。
3.12 docker-compose run
在指定服务上执行一个命令
docker-compose run [options] [-v VOLUME...] [-p PORT...] [-e KEY=VAL...] SERVICE [COMMAND] [ARGS...]
示例:
docker-compose run ubuntu ping www.baidu.com
在指定容器上执行一个ping命令。
3.13 docker-compose scale
设置指定服务运行的容器个数
docker-compose scale web=3 db=2
。通过service=num的参数来设置数量
3.14 docker-compose pause
docker-compose pause [SERVICE...]
暂停一个服务容器
3.15 docker-compose kill
通过发送SIGKILL信号来强制停止服务容器
`docker-compose kill [options] [SERVICE ...]`
支持通过-s参数来指定发送的信号。
例如通过如下指令发送SIGINT信号:`docker-compose kill -s SIGINT`
3.16 dokcer-compose config
验证并查看compose文件配置
`docker-compose config [options]`
选项包括:
–resolve-image-digests 将镜像标签标记为摘要
-q, –quiet 只验证配置,不输出。 当配置正确时,不输出任何内容,当文件配置错误,输出错误信息 –services 打印服务名,一行一个 –volumes 打印数据卷名,一行一个
3.17 docker-compose create
为服务创建容器
`docker-compose create [options] [SERVICE...]`
选项包括: –force-recreate:重新创建容器,即使配置和镜像没有改变,不兼容–no-recreate参数 –no-recreate:如果容器已经存在,不需要重新创建,不兼容–force-recreate参数 –no-build:不创建镜像,即使缺失 –build:创建容器前,生成镜像
3.18 docker-compose exec
docker-compose exec [options] SERVICE COMMAND [ARGS...]
选项包括: -d 分离模式,后台运行命令。 –privileged 获取特权。 –user USER 指定运行的用户。 -T 禁用分配TTY,默认docker-compose exec分配TTY。 –index=index,当一个服务拥有多个容器时,可通过该参数登陆到该服务下的任何服务,例如:docker-compose exec –index=1 web /bin/bash ,web服务中包含多个容器
3.19 docker-compose port
docker-compose port [options] SERVICE PRIVATE_PORT
显示某个容器端口所映射的公共端口。 选项包括: –protocol=proto,指定端口协议,TCP(默认值)或者UDP –index=index,如果同意服务存在多个容器,指定命令对象容器的序号(默认为1)
3.20 docker-compose push
推送服务依的镜像
docker-compose push [options] [SERVICE...]
选项包括: –ignore-push-failures 忽略推送镜像过程中的错误
3.21 docker-compose unpause
docker-compose unpause [SERVICE...] 恢复处于暂停状态中的服务。
3.22 docker-compose version
docker-compose version 打印版本信息。
更多推荐
已为社区贡献2条内容
所有评论(0)