dockercompose语法使用

本文详细介绍了DockerCompose的用法,包括配置文件`docker-compose.yml`的编写,如服务定义、环境变量、数据卷、网络、日志、镜像拉取和更新、容器启动与停止、扩容、健康检查以及资源管理等关键概念。此外,还展示了如何使用`docker-compose`进行多容器应用的部署和管理。

dockercompose语法

https://docs.docker.com.zh.xy2401.com/compose/compose-file/

curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
chmod 755 docker-compose
root@ubuntu:~/test# cat docker-compose.yml
version: '3'
services:
  mariadb:
    image: mariadb/server:latest
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
    volumes:
      - /path/to/mariadb-persistence:/bitnami/mariadb
docker pull mariadb/server:latest

up

docker-compose -f xxx.yaml up [ -d ]   #bu-f指定,默认文件名为docker-compose.yml,-d后台运行。
[root@vm ~]# cat docker-compose.yml
version: "3"
services:
  nginx:
    image: nginx
[root@vm ]# docker-compose up -d
Creating network "root_default" with the default driver
Creating root_nginx_1 ... done    #创建容器名
Attaching to root_nginx_1
[root@vm ~]# docker inspect root_nginx_1
...
                    "IPAddress": "172.18.0.2",
[root@vm ~]# curl 172.18.0.2
...
<h1>Welcome to nginx!</h1>

docker-compose up -d   可以更新镜像,如果不想重启容器,加参数--no-recreate

down

[root@vm ~]# docker-compose down		#停止并删除容器、网络、卷、镜像。
Stopping root_nginx_1 ... done
Removing root_nginx_run_1 ... done
Removing root_nginx_1     ... done
Removing network root_default
[root@vm ~]# docker ps -a  #没有退出的容器

run

启动一个服务,并在一个服务上执行一个命令

[root@vm ~]# docker-compose run nginx   ls			#nginx 为yml里的services名
bin   docker-entrypoint.d   home   media  proc  sbin  tmp
boot  docker-entrypoint.sh  lib    mnt    root  srv   usr
dev   etc                   lib64  opt    run   sys   var

start、stop、restart、pause、rm

启动/停止/重启/暂停 /删除

docker-compose rm [options] [SERVICE...]
–f, –force,强制直接删除,包括非停止状态的容器   -v,删除容器所挂载的数据卷

ps logs pull

查看容器、查看日志、拉取镜像

[root@vm ~]# docker-compose ps			#列出所有容器
    Name                  Command               State   Ports
--------------------------------------------------------------
root_nginx_1   /docker-entrypoint.sh ngin ...   Up      80/tcp
[root@vm ~]# docker-compose logs nginx		#查看日志
Attaching to root_nginx_1
nginx_1  | 2022/12/29 10:02:30 [notice] 1#1: start worker processes
[root@vm ~]# cat docker-compose.yml
version: "3"
services:
  busybox:
    image: busybox
[root@vm ~]# docker-compose pull
Pulling busybox ... done
[root@vm ~]# docker images  busybox
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
busybox             latest              827365c7baf1        6 days ago          4.86M
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值