栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Docker Compose容器编排

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Docker Compose容器编排

1、概念

管理多个容器实例,负责实现对docker容器集群的快速编排,有一个Docker-Compose.yml文件定义一组相关联的应用为一个项目。

2、实现Docker-Compose

  • 安装
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose #增加可执行权限
docker-compose --version
#显示出版本就配置成功了
  • docker compose相关常用命令
docker-compose up -d  #启动所有docker-compose服务后台运行

docker-compose down #停止并删除容器、网络、卷、镜像

docker-compose config -q 检查配置,有问题才输出
  • 编写Dockerfile构建jar,这里和之前一样
    Dockerfile构建springboot项目的容器镜像

  • 编写docker-compose.yml文件

version: "3"   

services:
 microService:
  image: orderservice:1.0  #启动服务的镜像
  ports:
   - "8081:8081"    #-p  映射端口
  volumes:
   - /app/microService:/data #-v  挂载目录
  networks:
   - my-net   #自定义的网络名称(需要提前创建自定义网络,才能通过容器名通信)
  depends_on:
   - redis
   - mysql
   
 redis:
  image: redis:latest
  ports:
   - "6379:6379"
  volumes:
   - /app/redis/redis.conf:/etc/redis/redis.conf
   - /app/redis/data:/data
  networks:
   - my-net
  command: redis-server /etc/redis/redis.conf
 
 mysql:
  image: mysql:5.7
  environment:
   MYSQL_ROOT_PASSWORD: '123456'
   MYSQL_ALLOW_EMPTY_PASSWORD: 'no'
   MYSQL_DATABASE: 'orderservice'
   MYSQL_USER: 'order'
   MYSQL_PASSWORD: 'order123'
  ports:
   - "3306:3306"
  volumes:
   - /app/mysql/db:/var/lib/mysql
   - /app/mysql/conf/my.cnf:/etc/my.cnf
   - /app/mysql/init:/docker-entrypoint-initdb.d
  networks:
   - my-net
  command: --default-authentication-plugin=mysql_native_password #解决外部无法访问

networks:
 my-net:


将固定ip改成服务

  • 检查语法
docker-compose config -q 
  • 运行docker-compose文件
docker-compose up -d
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/978702.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号