利用一个镜像去创建多个微服务实例,实现扩展服务的目的,主要难点是利用配置文件分别启动不同的实例

代码其实很简单,就是一个服务,以开发环境配置文件,以测试环境配置,使两个服务端口不一样,另外如果不其它东西,仅仅是改端口,其实也可以直接启动容器的时候把端口号指定出来,-d -p 8080:8080 等这种方式也是成立的,想改变更多的内容就要用配置文件来启动了

两个配置文件application-dev.yml,和application-test.yml application.yml

  • application-dev.yml如下
server:
  port: 8081
  • application-dev.yml如下
server:
  port: 8090
  • jar包上传到目录.正常构建镜像
  • 启动镜像

启动dev环境的镜像[port:8081]

docker run -d -p 9000:8081 fd13c19f7684   --spring.profiles.active=dev
# 或者
docker run -d -p 9000:8081 fd13c19f7684  java -jar app.jar --spring.profiles.active=dev

docker一个镜像多个服务 一个docker镜像运行多个实例_docker一个镜像多个服务


启动test环境的镜像[port:8090]

docker run -d -p 9010:8090 fd13c19f7684   --spring.profiles.active=test
# 或者
docker run -d -p 9010:8090 fd13c19f7684  java -jar app.jar --spring.profiles.active=test

docker一个镜像多个服务 一个docker镜像运行多个实例_linux_02


docker一个镜像多个服务 一个docker镜像运行多个实例_docker_03