300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Springboot项目使用Idea直接生成docker镜像部署到Centos7.6

Springboot项目使用Idea直接生成docker镜像部署到Centos7.6

时间:2018-11-19 14:01:23

相关推荐

Springboot项目使用Idea直接生成docker镜像部署到Centos7.6

废话不多说,直接开干:

1、开放docker仓库访问地址;

#输入此命令设置docker.service的仓库访问端口,ExecStart项添加:-H tcp://0.0.0.0:2375vim /usr/lib/systemd/system/docker.service#保存退出后输入命令重新加载配置systemctl daemon-reload#重启dockersystemctl restart docker#请记得输入一下命令关闭centos的系统防火墙,否则永远访问不了systemctl stop firewalld.service

2、Idea中安装docker插件;

File=>Setting=>plugins=>搜索docker=》install(安装)

3、创建DockerFile;

在项目根目录下创建DockerFile

#DockerFile内容#基础镜像,如果本地没有,会从远程仓库拉取。FROM java:8#维护者信息MAINTAINER rock <1539773555@>#工作目录#WORKDIR /opt/docker/penguin-log-web/#这里的 /tmp 目录就会在运行时自动挂载为匿名卷,任何向 /tmp 中写入的信息都不会记录进容器存储层,可以多个VOLUME ["/tmp"]#声明了容器应该打开的端口并没有实际上将它打开EXPOSE 16060#定义参数#ARG JAR_FILE## 将jar包添加到容器中并更名为app.jar#ADD *.jar app.jar#拷贝本地文件到镜像中#复制上下文目录下的target/demo-1.0.0.jar 到容器里#COPY ${JAR_FILE} penguin-log-web.jar#复制上下文目录下的target/demo-1.0.0.jar 到容器里COPY target/yunxiao-web-api-0.0.1-SNAPSHOT.jar app.jar#bash方式执行,使demo-1.0.0.jar可访问#RUN新建立一层,在其上执行这些命令,执行结束后, commit 这一层的修改,构成新的镜像。RUN bash -c "touch /app.jar"#指定容器启动时要执行的命令,但如果存在CMD指令,CMD中的参数会被附加到ENTRYPOINT指令的后面ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]#设置时区RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \&& echo 'Asia/Shanghai' >/etc/timezone \

4、添加Maven插件支持打包docker镜像;

在pom.xml文件添加plugins节点配置打包docker镜像后推送的docker仓库地址:<dockerHost>http://192.168.1.209:2375</dockerHost>

<plugin><groupId>com.spotify</groupId><artifactId>docker-maven-plugin</artifactId><version> 1.2.1</version><executions><execution><id>build-image</id><phase>package</phase><goals><goal>build</goal></goals></execution></executions><configuration><imageName>${project.artifactId}</imageName><imageTags><imageTag>latest</imageTag></imageTags><dockerDirectory>${project.basedir}</dockerDirectory><dockerHost>http://192.168.1.209:2375</dockerHost><resources><resource><targetPath>/</targetPath><directory>${project.build.directory}</directory><include>${project.build.finalName}</include></resource></resources></configuration></plugin>

maven直接package打包则可以自动生成docker镜像并推送到配置的docker镜像仓库

可以在centos下输入命令:docker images 查看docker镜像是否上传成功

5、启动docker镜像测试;

#启动docker容器的命令docker run -itd -p 16060:16060 --name testdemo yunxiao-web-api#查看docker容器运行状态docker ps

访问测试

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。