栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

DockerCompose部署多个镜像

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

DockerCompose部署多个镜像

目录

初始DockerCompose

安装DockerCompose

Compose部署微服务demo

使用DockerFile创建镜像,DockerCompose部署项目



初始DockerCompose

作用:快速部署多个容器,而无序一个个docker run

介绍:

DockerCompose是一个文本文件,里面通过指令定义了每个容器如何运行的

下面是两种方式:

 不用端口是因为集群,自己访问就行了,所以端口不需要暴露;

version: "3.8"
services:
  mysql:
    image: mysql:5.7.25
    environment:
     MYSQL_ROOT_PASSWORD: 123 
    volumes:
     - "/tmp/mysql/data:/var/lib/mysql"
     -  "/tmp/mysql/conf/hmy.cnf:/etc/mysql/conf.d/hmy.cnf"
  web:
    build: .
    ports:
     - "8090:8090"

下面这个web:build : . xxxx类似于:1.用来用户主动自定义build镜像给到岛屿(本地),后面的.代表当前文件目录下build镜像

2.然后后面的ports相当于docker run了生成容器


安装DockerCompose

1.通过命令下载,或者通过资料上传到/usr/lcoal/bin目录也行

# 安装
curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

2.修改权限

# 修改权限
chmod +x /usr/local/bin/docker-compose

3.Base自动补全命令

# 补全命令
curl -L https://raw.githubusercontent.com/docker/compose/1.29.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose

4.若出现错误

echo "199.232.68.133 raw.githubusercontent.com" >> /etc/hosts

Compose部署微服务demo

因为我们的微服务可能并不在本机上,所以我们需要将nacos、mysql等服务地址进行修改改为服务名,然后使用打包打成app.jar,然后拷贝到cloud-demo中的每一个对应的子目录中; 

这里我们再复习一下DockerFIle:

一种构建镜像最常用的方式,包括:基础镜像信息+层层叠加,维护更新(容器启动指令+镜像操作指令...)

Docker从上到下顺序执行DockerFIle指令,为了指定基本映象,第一条指令时FROM

每条指令都会创建一个新的镜像层,并对镜像进行提交


 实现步骤:

1.cloud项目需要打成jar包后放到各自服务的文件夹下,同时还需要+DockerFile文件,分别代表:

java8,拷贝的app.jar文件,启动脚本

FROM java:8-alpine
COPY ./app.jar /tmp/app.jar
ENTRYPOINT java -jar /tmp/app.jar

2.每个服务的DockerFile准备好后(也就是镜像构建好),我们还需要DockerCompose:——>目的是将多个镜像全部启动

version: "3.2"

services:
  nacos:
    image: nacos/nacos-server
    environment:
      MODE: standalone
    ports:
      - "8848:8848"
  mysql:
    image: mysql:5.7.25
    environment:
      MYSQL_ROOT_PASSWORD: 123
    volumes:
      - "$PWD/mysql/data:/var/lib/mysql"
      - "$PWD/mysql/conf:/etc/mysql/conf.d/"
  userservice:
    build: ./user-service
  orderservice:
    build: ./order-service
  gateway:
    build: ./gateway
    ports:
      - "10010:10010"

最后再执行docker-compose up -d后台部署即可

使用DockerFile创建镜像,DockerCompose部署项目

(13条消息) 使用Dockerfile创建镜像,Docker compose部署服务_吴用丶的博客-CSDN博客_dockerfile 创建镜像

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/885327.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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