打包docker镜像上传服务器(简单易懂)

服务器下载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 后台运行

Guess you like

Origin blog.csdn.net/m0_48358308/article/details/112363802