Docker-compose创建镜像与容器

一、工程源码打包成jar

首先 idea 得安装插件maven。使用maven的package功能生成.jar文件。如图:
在这里插入图片描述
在这里插入图片描述

二、添加配置文件

在项目中添加三个文件:application.yml、docker-compose.yml、Dockerfile,文件内容分别如下:
在这里插入图片描述

1、application.yml 内容

spring:
  application:
    name: eureka-service
---
server:
  port: 8081
spring:
  profiles: eureka-svc1
eureka:
  instance:
    hostname: eureka-svc1
    prefer-ip-address: true
  client:
    serviceUrl:
      defaultZone: http://eureka-svc2:8082/eureka/,http://eureka-svc3:8083/eureka/
      register-with-eureka: true
---
server:
  port: 8082
spring:
  profiles: eureka-svc2
eureka:
  instance:
    hostname: eureka-svc2
    prefer-ip-address: true
  client:
    serviceUrl:
      defaultZone: http://eureka-svc1:8081/eureka/,http://eureka-svc3:8083/eureka/
      register-with-eureka: true
---
server:
  port: 8083
spring:
  profiles: eureka-svc3
eureka:
  instance:
    hostname: eureka-svc3
    prefer-ip-address: true
  client:
    serviceUrl:
      defaultZone: http://eureka-svc2:8082/eureka/,http://eureka-svc1:8081/eureka/
      register-with-eureka: true

2、docker-compose.yml 内容

version: '3'
services:
  eureka-svc1:
    build: .
    container_name: eureka-svc1
    networks:
      - eureka-net
    ports:
      - 7001:7001
    environment:
      - spring.profiles.active=eureka-svc1
  eureka-svc2:
    build: .
    container_name: eureka-svc2
    networks:
      - eureka-net
    ports:
      - 7002:7002
    environment:
      - spring.profiles.active=eureka-svc2
  eureka-svc3:
    build: .
    container_name: eureka-svc3
    networks:
      - eureka-net
    ports:
      - 7003:7003
    environment:
      - spring.profiles.active=eureka-svc3

networks:
  eureka-net:
    driver: bridge

3、Dockerfile 内容

FROM openjdk:8-alpine
ENV TARGET_JAR="工程jar包名字.jar"
ADD ./${TARGET_JAR} /${TARGET_JAR}
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
  && echo 'Asia/Shanghai' >/etc/timezone
CMD java -Xrs -Xmx1024m -jar ${TARGET_JAR} --eureka.hostUri=${EUREKAHOSTURI}

三、将上述三文件与工程jar包上传服务器

本人使用工具Xftp上传,新建了个目录存放在这些文件,如下图:
在这里插入图片描述

四、使用Docker-compose创建镜像与容器

服务器上必须得先安装Docker,然后再安装 Docker-compose,这样就具备了创建镜像与容器的条件。

1、安装docker-compose

curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

2、添加可执行权限

chmod +x /usr/local/bin/docker-compose

3、创建镜像与容器

Docker-compose up -d --build

镜像与容器的创建结果如下:
在这里插入图片描述

五、检验创建结果

docker images

在这里插入图片描述

docker ps -a

在这里插入图片描述
至此,镜像与容器都已创建完成。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值