#FROM java:8 设置基础镜像 FROM openjdk:8-jdk-alpine #指定镜像创建者信息 MAINTAINER wjdsg #切换工作目录 WORKDIR / #创建执行目录 RUN mkdir -p /servers # 切换指定命令 RUN cd /servers # 传递参数,微服务打包的jar包名字 ARG JAR_FILE # 将指定的JAR_FILE拷贝到 /servers/app.jar COPY ${JAR_FILE} /servers/app.jar # 暴露指定的端口 EXPOSE 8081 # 执行发布命令("--profile=prod":使用生产环境) CMD ["nohup","java","-jar","/servers/app.jar","--profile=prod","--server.port=8081","&"]第四、配置:dockerfile-maven插件
4.0.0 org.springframework.boot spring-boot-starter-parent2.4.8 com.pug.ksd spring-docker-demo0.0.1-SNAPSHOT spring-docker-demo Demo project for Spring Boot 1.8 example org.springframework.boot spring-boot-starter-weborg.projectlombok lombokorg.springframework.boot spring-boot-configuration-processororg.springframework.boot spring-boot-starter-actuatororg.springframework.boot spring-boot-starter-testtest org.springframework.boot spring-boot-maven-plugintrue com.spotify dockerfile-maven-plugin1.4.13 default build push ${project.artifactId} ${project.version} target/${project.build.finalName}.jar
注意Dockerfile必须和target平齐,否则找不到jar。
第五、镜像服务器的配置 1、打开docker文件# 编辑docker vim /lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2280 -H unix:///var/run/docker.sock
保存退出:ESC===>:wq
重启:
systemctl daemon-reload && systemctl restart docker配置环境变量
DOCKER_HOST=tcp://47.107.225.126:2280注意:如果是云服务器,记得去安全组开端口,如果是虚拟机,执行开端口命令:
firewall-cmd --zone=public --add-port=8080/tcp --permanent firewall-cmd --zone=public --add-port=3306/tcp --permanent firewall-cmd --zone=public --add-port=6379/tcp --permanent firewall-cmd --zone=public --add-port=2280/tcp --permanent重启虚拟机才能生效:
firewall-cmd --reload
详情可以看Linux *** 作手册_anxiaoxiao61的博客-CSDN博客
执行推送命令mvn clean package -Dmaven.test.skip=true dockerfile:build
如果报这个错误:
换成这个指令:
mvn clean package '-Dmaven.test.skip=true' dockerfile:build
有问题留言:一起讨论一下
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)