②. 编写Dockerfile文件
- ①. 需要注意的是,这里的8080端口,如果在application.yaml中不写端口默认是8080
FROM openjdk:8u282-slim # 如下操作可以让容器时间和虚拟机时间一致 RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone LABEL maintainer="845195485@qq.com" # COPY --from=buildapp /app/app.jar /app.jar COPY demo-0.0.1-SNAPSHOT.jar /app.jar EXPOSE 8080 # CMD ["--server.prot=8080"] ENV JAVA_OPTS="" ENV PARAMS="" ENTRYPOINT [ "sh", "-c", "java -Djava.security.egd=file:/dev/./urandom $JAVA_OPTS -jar /app.jar $PARAMS" ]
③. 将jar包和Dockerfile文件上传服务器
- ①. 在服务器上进行如下操作
[root@k8s-master dockerFileTest]# ls demo demo-0.0.1-SNAPSHOT.jar Dockerfile [root@k8s-master dockerFileTest]# docker build -t dockerfiledemo:1.0 -f Dockerfile . Sending build context to Docker daemon 35.2MB Step 1/8 : FROM openjdk:8u282-slim ---> 1a67dffb0ee8 Step 2/8 : RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone ---> Using cache ---> 2e7e3104a115 Step 3/8 : LABEL maintainer="845195485@qq.com" ---> Using cache ---> a6a0060db56e Step 4/8 : COPY demo-0.0.1-SNAPSHOT.jar /app.jar ---> fcd3b9f4dc33 Step 5/8 : EXPOSE 8080 ---> Running in 1791b1aadb3d Removing intermediate container 1791b1aadb3d ---> 1243444bc9ca Step 6/8 : ENV JAVA_OPTS="" ---> Running in 7796f6f4e49d Removing intermediate container 7796f6f4e49d ---> c9f0c47899a4 Step 7/8 : ENV PARAMS="" ---> Running in 6346bde227c7 Removing intermediate container 6346bde227c7 ---> a4f64bd2afda Step 8/8 : ENTRYPOINT [ "sh", "-c", "java -Djava.security.egd=file:/dev/./urandom $JAVA_OPTS -jar /app.jar $PARAMS" ] ---> Running in fdb39fafb931 Removing intermediate container fdb39fafb931 ---> 2c651e7bb1f6 Successfully built 2c651e7bb1f6 Successfully tagged dockerfiledemo:1.0 [root@k8s-master dockerFileTest]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE dockerfiledemo 1.0 2c651e7bb1f6 7 seconds ago 306MB
[root@k8s-master demo]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 32adb642988b dockerfiledemo:1.0 "sh -c 'java -Djava.…" 26 seconds ago Up 25 seconds 0.0.0.0:49170->8080/tcp
②. 通过浏览器访问(http://139.198.169.136:49170/helloTang)