Docker部署Springboot项目——多环境
根据不同的环境(dev,prod),配置不同profile启动
application.properties中只需配置spring.profiles.active=dev,当jar启动时没配置spring.profiles.active参数时的默认启动application-testing.properties配置文件
在创建docker镜像中配置ENTRYPOINT
1.DockerFile----dev
[code]FROM openjdk:8-jdk-alpine VOLUME /tmp #项目的 jar 文件作为 “app.jar” 添加到容器中; ADD demo.jar app.jar # Image创建容器时的初始化内存,最大内存,及启动时使用的profile. -c为清除以前启动的数据 ENTRYPOINT ["java","-Xms1024m","-Xmx1024m","-jar","/app.jar","--spring.profiles.active=dev","-c"]
2.DockerFile---pro
[code]FROM openjdk:8-jdk-alpine VOLUME /tmp #项目的 jar 文件作为 “app.jar” 添加到容器中; ADD demo.jar app.jar # Image创建容器时的初始化内存,最大内存,及启动时使用的profile. -c为清除以前启动的数据 ENTRYPOINT ["java","-Xms1024m","-Xmx1024m","-jar","/app.jar","--spring.profiles.active=pro","-c"]
存放Dockerfile及需要部署的jar包
使用docker build 构建镜像
[code]//docker build // . 表示当前目录 -f 参数指定Dockerfile文件 -t 表示 制作的镜像 docker build -f Dockerfile -t demodev:v1 .
[code]//docker build // . 表示当前目录 -f 参数指定Dockerfile文件 -t 表示 制作的镜像 docker build -f Dockerfile64 -t demopro:v1 .
查看构建好的镜像
使用docker run 运行打包好的镜像,查看是否能按需求运行
[code]//-d 表示后台运行容器 如果使用-d docker run -d demodev:v1
备注:在前台模式下(不指定-d参数即可),Docker会在容器中启动进程,同时将当前的命令行窗口附着到容器的标准输入、标准输出和标准错误中。也就是说容器中所有的输出都可以在当前窗口中看到。甚至它都可以虚拟出一个TTY窗口,来执行信号中断(不加 -d参数 可能会导致当前shell 窗口始终为容器中进程运行的输出内容,甚至(ctrl+c)都无法中断)
-d,那么容器将会运行在后台模式。此时所有I/O数据只能通过网络资源或者共享卷组来进行交互。因为容器不再监听你执行docker run的这个终端命令行窗口,只是会输出本次容器启动的containerID。可以使用docker logs containerID 来打印容器应用相关日志’
注:启动容器报错iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 9095 -j DNAT --to-destination 0.0.0.0/9095 ! -i docker0: iptables: No chain/target/match by that name.
重启docker:systmctl restart docker
- Spring boot项目部署到Docker环境
- spring-boot项目在外部tomcat环境下部署
- spring-boot项目在外部tomcat环境下部署
- 使用Docker部署Spring boot项目
- docker 部署springboot、dubbo项目
- spring-boot项目在外部tomcat环境下部署
- docker 部署springboot、dubbo项目
- Docker中部署SpringBoot项目
- Springboot项目云部署 ---- 基于Docker的部署
- Spring boot项目在docker下的部署,发布
- spring-boot项目在外部tomcat环境下部署
- spring-boot项目在外部tomcat环境下部署
- 1 springboot项目集成使用disconf,基于docker环境
- Docker---(5)Docker 部署SpringBoot web项目
- spring boot项目在外部tomcat环境下部署
- spring-boot项目在外部tomcat环境下部署
- Docker部署SpringBoot项目
- Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo
- Docker 部署 SpringBoot 项目
- spring-boot项目在外部tomcat环境下部署