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,交付给别人的就是一个镜像即可!