1、打包好的jar文件上传到服务器
2、与jar包同目录下新建Dockerfile文件
FROM openjdk:8-jdk-alpine
MAINTAINER "维护者 <email>"
LABEL description="描述"
WORKDIR app
ADD micro-service-demo-0.0.1-SNAPSHOT.jar /app/app.jar
EXPOSE 8081
CMD java -jar /app/app.jar
FROM:指定基础镜像,必须为第一个命令
MAINTAINER: 维护者信息
LABEL:用于为镜像添加元数据
ADD:将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wget
COPY:功能类似ADD,但是是不会自动解压文件,也不能访问网络资源
WORKDIR:工作目录,类似于cd命令
RUN:构建镜像时执行的命令
CMD:构建容器后调用,也就是在容器启动时才进行调用。
ENTRYPOINT:配置容器,使其可执行化。配合CMD可省去"application",只使用参数。
ENV:设置环境变量
EXPOSE:指定于外界交互的端口
VOLUME:用于指定持久化目录
ARG:用于指定传递给构建运行时的变量
USER:指定运行容器时的用户名或 UID,后续的 RUN 也会使用指定用户。使用USER指定用户时,可以使用用户名、UID或GID,或是两者的组合。当服务不需要管理员权限时,可以通过该命令指定运行用户。并且可以在之前创建所需要的用户
ONBUILD:用于设置镜像触发器
参考文章:Dockerfile文件详解
3、编译Dockerfile文件生成Docker镜像
docker build -t micro-service-demo .
-t micro-service-demo:生成目标镜像名
. :Dockerfile文件路径
如果需要删除旧的镜像
docker rmi 镜像名
4、运行micro-service-demo镜像
docker run -d -p 8081:8081 micro-service-demo
-d :在后台运行容器
-p 8081:8081 :主机端口号:容器端口号
micro-service-demo :镜像名称
5、查看容器运行状态
docker ps
删除旧的容器,需要先停止容器,再删除。
docker stop 容器ID docker rm 容器ID
6、查看容器运行输出的日志信息
docker logs -f 容器ID
-f :不间断持续输出