一、前言
温馨小提示: 案例源码demo放文章最后了
idea
CentOS7.3服务器
docker
springboot项目
可参考小编的另外一篇文章:https://blog.csdn.net/qq_38225558/article/details/100016217
vi /lib/systemd/system/docker.service# ① 修改宿主机配置文件systemctl daemon-reload&&systemctl restart docker# ② 重启dockerfirewall-cmd--zone=public--add-port=2375/tcp--permanent# ③ 防火墙开放端口2375
连接成功后我们便可查看docker下的容器和镜像
<properties><docker.image.prefix>docker-demo</docker.image.prefix></properties><build><plugins><!-- maven打包插件 -> 将整个工程打成一个 fatjar --><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin><!-- docker构建插件 --><plugin><groupId>com.spotify</groupId><artifactId>docker-maven-plugin</artifactId><version>1.0.0</version><configuration><!-- 生成的docker镜像名称 --><imageName>${docker.image.prefix}/${project.artifactId}</imageName><dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory><resources><resource><targetPath>/</targetPath><directory>${project.build.directory}</directory><include>${project.build.finalName}.jar</include></resource></resources></configuration></plugin><!-- 复制jar包到指定目录 --><plugin><artifactId>maven-antrun-plugin</artifactId><executions><execution><phase>package</phase><configuration><tasks><copytodir="src/main/docker"file="target/${project.artifactId}-${project.version}.${project.packaging}"></copy></tasks></configuration><goals><goal>run</goal></goals></execution></executions></plugin></plugins></build>
4. 在项目 src/main 目录下创建 docker 目录与 Dockerfile 文件
# 指定基础镜像 这里springboot项目运行只需要java jdk环境即可FROM java:latest# 维护者信息MAINTAINER zq# 将本地的可执行文件拷贝到Docker容器中的根目录下COPY app.sh /#给app.sh赋予可执行权限RUNchmod+x /app.sh# 重命名ADD*.jar app.jar# 对外暴漏的端口号EXPOSE 9100# 运行ENTRYPOINT["/app.sh"]# 方式一#ENTRYPOINT ["java", "-jar", "app.jar"] # 方式二
上面方式一中需要的 app.sh 文件内容如下
#!/bin/bashjava-jarapp.jar
点击运行
构建成功之后如下:
选择 Log 即可查看项目输出日志信息
最后奉上源码demo以供参考:https://download.csdn.net/download/qq_38225558/11595170
整体项目结构如下,相对入门比较简单
网友评论