赞
踩
参考代码
简单的学习下怎么在 Spring Boot 中使用 Docker 进行构建,发布一个镜像,现在我们通过远程的 docker api 构建镜像,运行容器,发布镜像等操作。
这里只介绍两种方式:
开启 docker api 远程操作的功能,
例如,centos 7 中在 /usr/lib/systemd/system/docker.service,文件中,修改 ExecStart 的参数:
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
端口自定义设置即可。
重载所有修改过的配置文件,并且重启 docker,
systemctl daemon-reload
systemctl restart docker.service
需要注意的是,由于没有密码登陆任何权限验证,外网或者生产环境需要上证书使用。
这种方式其实非常简单,就是需要懂得 docker 命令,才能操作。
经过上面开启 Docker Api 后,我们可以使用网络环境操作 Docker 引擎了。
新建 Dockerfile 构建镜像文件,新创建一个文件夹,专门放构建镜像需要的文件,我创建的是 /src/docker/
FROM java:8
EXPOSE 8080
VOLUME /tmp
ADD springboot-docker.jar app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
执行 maven 命令 ,将项目打包 mvn clean package --DskipTests,然后将打好的 jar 包,也放入到 Dockerfile项目目录中。
然后进入 src/docker 目录下执行 :
docker -H tcp://xxx.xxx.xxx.xxx:2375 build -t test .
开始构建镜像:
Sending build context to Docker daemon 31.74MB Step 1/5 : FROM java:8 ---> d23bdf5b1b1b Step 2/5 : EXPOSE 8080 ---> Using cache ---> 060a43a42146 Step 3/5 : VOLUME /tmp ---> Using cache ---> b4f88fde6181 Step 4/5 : ADD springboot-docker.jar app.jar ---> 3a40188825b0 Step 5/5 : ENTRYPOINT ["java","-jar","/app.jar"] ---> Running in ab093916fc4c Removing intermediate container ab093916fc4c ---> 45a3966feb60 Successfully built 45a3966feb60 Successfully tagged test:latest
docker-maven-plugin <!--打包docker插件相关参数的配置-->
<plugin>
<groupId>com.spotify</groupId>
&Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。