Springboot项目打包成Docker镜像部署

1. 创建一个springboot项目

并创建一个测试controller

在这里插入图片描述

启动测试,保证没问题:

在这里插入图片描述

2. 打包应用

在这里插入图片描述

在这里插入图片描述

3. 编写dockerfile

需要dockerfile文件语法提示高亮下个idea的docker插件:

在这里插入图片描述

下载地址:https://plugins.jetbrains.com/plugin/7724-docker/versions

在这里插入图片描述

FROM java:8

COPY *.jar /app.jar

CMD ["--server.port=8080"]

EXPOSE 8080

ENTRYPOINT ["java", "-jar", "/app.jar"]

把文件上传到阿里云主机:(这里用的是宝塔面板)

在这里插入图片描述

4. 构建镜像

[root@LYX docker-test]# ls
demo-0.0.1-SNAPSHOT.jar  Dockerfile

[root@LYX docker-test]# docker build -t boot-docker666 .
Sending build context to Docker daemon  17.33MB
Step 1/5 : FROM java:8
8: Pulling from library/java
5040bd298390: Pull complete 
fce5728aad85: Pull complete 
76610ec20bf5: Pull complete 
60170fec2151: Pull complete 
e98f73de8f0d: Pull complete 
11f7af24ed9c: Pull complete 
49e2d6393f32: Pull complete 
bb9cdec9c7f3: Pull complete 
Digest: sha256:c1ff613e8ba25833d2e1940da0940c3824f03f802c449f3d1815a66b7f8c0e9d
Status: Downloaded newer image for java:8
 ---> d23bdf5b1b1b
Step 2/5 : COPY *.jar /app.jar
 ---> 402911918c60
Step 3/5 : CMD ["--server.port=8080"]
 ---> Running in 384c8a45792c
Removing intermediate container 384c8a45792c
 ---> 8d0a1eba3ccf
Step 4/5 : EXPOSE 8080
 ---> Running in e27f4054bdc1
Removing intermediate container e27f4054bdc1
 ---> 146ff6934103
Step 5/5 : ENTRYPOINT ["java" , "-jar" , " / app.jar"]
 ---> Running in 15829f330e98
Removing intermediate container 15829f330e98
 ---> 180180063ec7
Successfully built 180180063ec7
Successfully tagged boot-docker666:latest

[root@LYX docker-test]# docker images
REPOSITORY       TAG       IMAGE ID       CREATED              SIZE
boot-docker666   latest    180180063ec7   About a minute ago   661MB
tomcat           latest    36ef696ea43d   12 days ago          667MB
java             8         d23bdf5b1b1b   4 years ago          643MB

5. 测试启动容器

在这里插入图片描述

成功!

使用docker,交付给别人的就是一个镜像即可!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值