Docker-compose应用

  • Docker-compose

Docker-compose 是Dcoker官方推出的Docker容器的一键编排工具,使用Docker-compose可以批量启动容器、停止容器等等。

  • 安装
  1. github地址

https://github.com/docker/compose/tree/v2.20.1

下载地址

https://github.com/docker/compose/releases

直接下载已经编译好的二进制文件即可。

  1. 上传
bash 复制代码
mv xxx docker-compose
chmod 777 docker-compose
mv docker-compose /usr/local/bin
  • Docker-compose文件编写

docker-compose的文件格式为yml格式,可以批量配置多个容器的配置,挂载的数据卷、映射的端口等等。通过编写好的yml文件,使用docker-compose 一键启动配置好的容器或者停止容器。

yml 复制代码
version: '3.1'
services:
  mysql:   #服务的名称
    restart: always #随着服务启动就启动
    image: daocloud.io/library/mysql:5.7.6
    container-name: mysql-3306
    ports:
      - 3306:3306 #指定此容器的端口映射
    environment:
      MYSQL_ROOT_PASSWORD: root
      TZ: Asiz/Shanghai
    volumes:
      - /opt/module/docker/mysql/data:/var/lib/mysql #映射mysql的数据目录到宿主机,保存数据
      - /opt/module/docker/mysql/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf #把mysql的配置文件映射到容器的相应目录
  tomcat:
    restart: always
    image: daocloud.io/library/tomcat:8.5.15-jre8
    container_name: tomcat-8080
    ports:
      - 8080:8080
    environment:
      JS: etc
    volumes:
    - /opt/module/docker/tomcat/webapps:/usr/local/tomcat/webapps #tomcat的核心应用挂载出来
    - /opt/module/docker/tomcat/logs:/usr/local/tomcat/logs
  • Docker-compose常用命令
bash 复制代码
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容器  start命令必须是一个已经存在的容器,相当于docker的start 容器不存在要先运行起来

运行yml文件中的所有容器

docker-compose up -d

注意:以上的操作命令需要在有 docker-compose.yml 目录下去执行。

相关推荐
Jerry小杰2 小时前
运维神器|单端口搞定多台内网SSH!frp端口复用终极教程
运维·ssh
Python私教3 小时前
Blender模型导入Godot完整教程:GLB、BLEND与继承场景怎么选
运维·godot·blender
AOwhisky3 小时前
Linux(CentOS)系统管理入门笔记(第十二期)——系统管理工具与软件包管理(上篇):Cockpit 与 RPM 包管理
linux·运维·笔记·centos·云计算
梦梦代码精4 小时前
PHP 还是 Java?LikeShop 多版本对比,附6条落地避坑建议
低代码·docker·开源·代码规范
运维大师5 小时前
【K8S 运维实战】15-链路追踪Jaeger与OTel
运维·容器·kubernetes
zerwave5 小时前
深入理解 Docker 的“层”(Layer)
docker·容器
霁月的小屋6 小时前
Docker 工程化实践(二):理解镜像分层与容器文件系统
运维·docker·容器
Android系统攻城狮6 小时前
Linux PipeWire深度解析之pw_context_add_spa_lib调用流程与实战(二十九)
linux·运维·服务器·音频进阶·pipewire音频进阶
Dovis(誓平步青云)6 小时前
《如何在CentOS 7中添加Plex官方软件源:解决文件磁盘难管理难题》
linux·运维·服务器·后端·生成对抗网络·centos
草莓熊Lotso6 小时前
【Linux网络】深入理解Linux IO多路复用:select服务器完善、内核原理与poll实战
linux·运维·服务器·c语言·网络·c++