服务器下载docker这里就不过多描述
先在dockerhub登陆,然后创建一个仓库:仓库名是你的账号加自定义
比如我账号是123,创建一个456的仓库,全称就是123/456,这个就是镜像名(不然后边还要改名字)
打包本地项目:
在这个目录创建一个dicker文件夹并创建一个dockerfile
内容:
FROM java:8 //基于java8 的镜像构建
//把我的这个jar包 添加到镜像 镜像里的jar包名字叫work.jar
ADD system_work_on-1.0-SNAPSHOT.jar work.jar
//在容器启动时运行 这些命令 这个命令是启动jar包并制定运行环境
ENTRYPOINT ["java","-Dspring.profiles.active=test","-jar","/work.jar"]
添加docker插件 并打包成jar
<build>
<plugins>
<!-- docker插件 -->
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<imageName>x x x</imageName>
//imageName 自定义镜像名 要跟dockerhub仓库的名称一样/
<!--docker文件所在的目录-->
<dockerDirectory>src/main/docker</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
</plugins>
</build>
打包好以后在命令行运行一下
java -jar jar包名
如果出现没有主清单属性
如果没有问题,在构建一下docker镜像
这样就可以在本地的docker查看这个镜像 命令:docker images
然后docker push 镜像名(箭头指的是你自己的镜像)
把镜像上传到dockerhub
上传成功以后在服务器下载这个镜像
docker pull 镜像名
然后可以在服务器的docker上看到这个镜像了
然后启动这个镜像
启动镜像
docker run --name 别名 -p 外部端口:内部端口 -d 自己的imageid
如果使用的nacos配置中心需要根据环境切换配置文件就添加
例子:
docker run --name consumer -p 8020:8020 -d e75
–name 取容器名 -p 端口 -d 后台运行