记录下一次从SpringBoot到Docker镜像并上传到私服仓库再到云服务器拉取对应镜像再启动容器的过程。
制作本地Docker镜像要求本地有Docker Desktop,直接去官网下载即可。
在pom.xml文件,添加对应的打包插件
<build>
<finalName>alibaba-cloud-gateway</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
<configuration>
<fork>true</fork>
<addResources>true</addResources>
</configuration>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>dockerfile-maven-plugin</artifactId>
<version>1.4.10</version>
<configuration>
<repository>${docker.image.prefix}/${project.artifactId}</repository>
<buildArgs>
<JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
</buildArgs>
</configuration>
</plugin>
</plugins>
</build>
在根目录创建Dockerfile,配置打包
FROM adoptopenjdk/openjdk11:ubi
VOLUME /tmp
ARG JAR_FILE
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
上述是描述要下载openjdk11,然后再对app.jar包弄到docker本地仓库去
注意:打包前要去docker desktop打开2379端口
然后输入命令
mvn install -Dmaven.test.skip=true dockerfile:build
完成打包构建,输入docker images
镜像构建完成
我使用的是阿里云,得先去阿里云镜像容器服务开启私服仓库。网址:https://cr.console.aliyun.com/
创建完对应的仓库后,它很贴心的配备了推拉服务
按照其教程就可很容易的完成。
先登录上去私有仓库
然后打上tag和进行push刚刚打包好的镜像
$ sudo docker tag [ImageId] registry.cn-beijing.aliyuncs.com/xdclass-cloud123/cloud-gateway:[镜像版本号]
$ sudo docker push registry.cn-beijing.aliyuncs.com/xdclass-cloud123/cloud-gateway:[镜像版本号]
Xshell连接上云服务器,先登录再拉取
$ sudo docker login --username=**** registry.cn-beijing.aliyuncs.com
$ sudo docker pull registry.cn-beijing.aliyuncs.com/xdclass-cloud123/cloud-gateway:[镜像版本号]
然后进行启动
docker run --name xdclass-gateway -d -p 8888:8888 镜像id
-d 后台运行
-p 端口映射
原文:https://www.cnblogs.com/zhoujianyi/p/14771197.html