需求:基于openjdk:8-jdk-alpine镜像,将一个java项目构建为镜像
实现步骤:

  1. 在linux系统检查有无openjdk:8-jdk-alpine镜像
docker images
  1. 如果没有,需要去镜像仓库拉取镜像,比如DockerHub
    在这里插入图片描述
    在这里插入图片描述
  2. 复制命令到linux系统控制台
docker pull openjdk:8-jdk-alpine

运行成功
在这里插入图片描述

  1. 在linux系统新建一个空目录,然后在目录中新建一个文件,命令为Dockerfile,拷贝java项目的jar包docker-demo.jar到这个目录中
    在这里插入图片描述
  2. 编写Dockerfile文件
  • 基于openjdk:8-jdk-alpine作为基础镜像
  • 将xxx.jar拷贝到镜像中
  • 暴露端口
  • 编写入口ENTRYPOINT
    内容如下:
# 基础镜像
FROM openjdk:8-jdk-alpine
# 设定时区
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 拷贝jar包
COPY docker-demo.jar /tmp/app.jar
#开放端口
EXPOSE 8090
# 入口
ENTRYPOINT ["java", "-jar", "/tmp/app.jar"]
  1. 进入到当前文件夹目录,然后使用docker build命令构建镜像
docker build -t docker-demo .

在这里插入图片描述
-t:是给镜像起名,格式依然是repository:tag的格式,不指定tag时,默认为latest;
. :是指定Dockerfile所在目录,如果就在当前目录,则指定为“.”;

  1. 此时再用docker images命令可查看构建出来的镜像
    在这里插入图片描述
  2. 使用docker run创建容器并运行
docker run -d --name dd -p 8090:8090 docker-demo

在这里插入图片描述
运行成功!
10. 使用docker logs -f [容器名称]命令在控制台打印日志

docker logs -f dd

在这里插入图片描述

  1. 在浏览器输入访问地址及接口信息即可访问项目
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐