首页 > 其他分享 >Docker Compose 容器编排

Docker Compose 容器编排

时间:2023-09-24 14:32:29浏览次数:34  
标签:容器 Compose yml 编排 compose docker root Docker localhost

docker-compose是docker官方的开源项目,负责实现对docker容器集群的快速编排

简单的理解就是对多个容器进行快速的管理,如一键启动、一键stop等等……

docker compose 官网


下载安装

老版本的需要去官网下载安装,新版本的直接使用yum进行安装即可

[root@localhost ~]# yum -y install docker-compose-plugin      yum安装 docker compose
[root@localhost ~]# docker compose version
Docker Compose version v2.19.1							查看版本号


compose 常用命令

docker compose -h					查看帮助
docker compose up					启动所有docker-compose服务
docker compose up -d			启动所有docker-compose服务并后台运行
docker compose down				停止并删除容器、网路、卷、镜像
docker compose exec +yml里的服务id号 /bin/bash      
进入容器实例内部。 写法:docker-compose exec 文件中写的服务id号(docker-compose.yml)  /bin/bash
docker compose ps					展示当前docker-compose编排过的运行的所有容器
docker compose top				展示当前docker-compose编排过的容器进程
docker compose logs +yml里面的服务id号   ##查看容器输出日志
docker compose config			检查配置
docker compose config -q  检查配置,有问题的才输出出来
docker compose restart    重启服务
docker compose start			启动服务
docker compose stop				停止服务

PS: 执行上述这些命令时 最好在docker-compose.yml 文件的同路径下去执行,避免找不到该文件时而出错。

使用compose

[root@localhost docker]# mkdir /docker
[root@localhost docker]# cd /docker
[root@localhost docker]# vim docker-compose.yml     编写yml文件 加入下方内容
下列内容是 tomcat 和 redis 的启动详情
docker-compose.yml 文件内容
version: '3'
services:
  tomcat001:
    image: tomcat
    container_name: tomcat001
    volumes:
      - /usr/local:/tmp
    networks:
      - aabb_network
    ports:
      - 8080:8080

  redis001:
    image: redis
    container_name: redis001
    volumes:
      - /usr/local:/tmp
    networks:
      - aabb_network
    ports:
      - 6379:6379

networks:
  aabb_network:

#version: '3'     #版本号
#services:        #容器列表(在services 下写入所有需要开启的容器的信息)
#tomcat001:       #定义该服务内容的名称
#image:           #镜像的名称 如:tomcat:1.5
#container_name:  #启动容器的名称
#networks:        #使用的网络模式
#ports:           #映射端口号
#volumes:         #数据卷的挂载
#networks:        #创建网络模式  
                  #相当于docker network create "想要创建的网络模式名称"   
#整段下来相当于 docker run -d -p 8080:8080 -v /usr/local:/tmp --network aabb_network --name tomcat001 tomcat
测试docker-compose.yml配置文件是否有错
[root@localhost docker]# docker compose config -q     
查看yml配置文件是否有错,编写有错误会报出来,
最好在docker-compose.yml 文件的同路径下去执行,避免找不到该文件时而出错。

启动docker-compose.yml并验证

[root@localhost docker]# docker compose up -d    启动yml配置的容器并后台运行 如图一所示
[root@localhost docker]# docker compose stop     停止
[root@localhost docker]# docker compose restart  重启启动   如下图二所示

Docker Compose 容器编排_redis

Docker Compose 容器编排_docker_02


[root@localhost docker]# docker network ls  验证网络模式状态

由于是在/docker 目录下创建的docker-compose.yml文件并执行的
所以在网络模式前面增加了docker的前缀变为了“docker_aabb_network” 如图所示

Docker Compose 容器编排_redis_03

如此便达到了使用Compose容器编排工具进行一键部署、启动、停止或重启容器的目的。

标签:容器,Compose,yml,编排,compose,docker,root,Docker,localhost
From: https://blog.51cto.com/cyfang/7585769

相关文章

  • Docker - Optimized Dockerfile
    WehavetheincentivetooptimizeourDockerfileto buildsmallerimages.Someofthepointsthatwecanprobablycomeupwithwould bethefollowing:• NotusingGolangforourbaseimage.Golangisastaticallycompiled language—oncewehavethecompil......
  • Docker - ERROR: failed to solve: golang:latest: error getting credentials - err:
    Dockerfile:FROMgolang:latestWORKDIR/appADD..RUNgoenv-wGOPROXY=https://goproxy.io,directRUNgogetRUNgobuild-oapp.CMD["/app/app"] zzh@ZZHPC:/zdata/MyPrograms/Go/aaa$dockerbuild-ttest:v1.[+]Building1.3s(3/3)FINI......
  • Docker 部署 Elasticsearch 8.6.2
    Docker部署Elasticsearch8.6.2dockerpullelasticsearch:8.6.2mkdir-pv/home/zonglin/elasticsearch/pluginssudodockerrun--nameelasticsearch-p9200:9200-p9300:9300\--restart=always\-e"discovery.type=single-node"\-eES_JAVA_......
  • docker-compose 部署 phpmyadmin
    docker-compose.yamlversion:'3.9'services:phpmyadmin:image:phpmyadmincontainer_name:phpmyadminrestart:alwaysprivileged:trueenvironment:-PMA_HOST=192.168.0.152ports:-"8081:80"ne......
  • docker-compose 部署 RabbitMQ
    docker-compose部署RabbitMQdocker-compose.ymlversion:'3.5'services:rabbitmq:restart:alwaysimage:rabbitmq:managementcontainer_name:rabbitmqhostname:rabbitports:-5672:5672-15672:15672environm......
  • docker-compose 安装 redis
    docker-compose安装redisversion:"3.5"services:lcloud-redis:image:redis:6.2container_name:lcloud-redisrestart:alwaysports:-6379:6379安装运行#docker-composeup-d--build......
  • Docker 部署 Redis
    Docker部署Redis参考资料:史上最详细Docker安装Redis拉取镜像dockerpullredis:latest创建数据卷#创建本地映射目录mkdir-p/mydata/redis/data#创建本地映射文件touch/mydata/redis/conf/redis.conf参数说明:-p:多级目录创建启动容器dockerrun--restart=......
  • Docker 部署 zookeeper
    Docker部署zookeeper拉取ZooKeeper镜像最新版本dockerpullzookeeper:latest创建数据卷mkdir-p./zookeeper/datamkdir-p./zookeeper/confmkdir-p./zookeeper/logs运行容器dockerrun-d--namelcloud-zookeeper--privileged=true-p2181:2181--restart=alw......
  • Docker 部署 思源笔记
    Docker部署思源笔记参考文档:思源笔记群辉docker安装简略版(新手向)-链滴(ld246.com)思源笔记docker部署-建站教程(jiuaidu.com)‍拉取镜像dockerpullb3log/siyuan运行dockerrun --namesiyuan-it-d --restart=always -v/usr/local/software/siy......
  • Docker 部署 MySQL
    Docker部署MySQL参考资料:使用docker-compose的方式部署mysql拉取镜像dockerpullmysql:latest创建数据卷mkdir-p./mysql/datamkdir-p./mysql/initdbmkdir-p./mysql/log运行容器设置开机自启dockerrun\--namemysql\-d\-p3306:3306\-v./mysql/log......