Java打包dockerFiel项目

1.maven引入打包所需依赖

<build>
    <finalName>${project.artifactId}</finalName>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

2.在项目根目录下,创建Dockerfile的文本文件,并将以下内容添加到文件中:

# 基础镜像
FROM  openjdk:8-jre
# author(作者)
LABEL maintainer="Dinopell"
# 将主机上的目录挂载到容器中。可以用来在容器外部和容器内部共享数据。
VOLUME /home/project
# 容器内部创建一个目录,该目录不存在,则创建之;如果已存在,则忽略
RUN mkdir -p /home/project
# 设置容器的工作目录为/home/luo,之后的工作路径都相对于这个目录。
WORKDIR /home/project
# 将主机上的.jar文件复制到容器内的工作路径下。
COPY ./project_jar_name.jar /home/project
#下面也也可增加复制配置文件到同级路径下
COPY ./dinopell-modules-product.jar /home/dinopell/product-service

# 启动认证服务
ENTRYPOINT ["java","-jar","project_jar_name.jar"]

#Data-Transmission.jar是你要打包的jar包的文件名。

3.注意

[注意]: . 必须要有
docker build -t product .

如果要给此镜像一个版本号那就用这个语句:

其中,“your-image-name”是镜像名称,“1.0”是版本号,“.”表示Dockerfile文件在当前目录中。

docker build -t product:1.0 .

4.执行以下命令把镜像启动容器:

其中,-p参数用于指定容器内部端口映射到主机的端口,8080:8080表示将容器内部的8080端口映射到主机的8080端口上。-d参数用于指定容器在后台运行。
【如果有版本,启动docker要加上版本】
docker run -d -p 9207:9207 product:1.0
第一个端口号是主机(本地)端口号,后面的端口号是服务器内部端口号

docker images

docker ps -a

docker stop 容器id

docker rm 容器id

docker ps -a

docker rmi -f 镜像id

5.docker pa -a 查看有没有所打包的项目

docker start ff0490c45224启动

docker images 查看镜像

5.之后就可以正常访问

  • 22
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值