需求:基于openjdk:8-jdk-alpine镜像,将一个java项目构建为镜像
实现步骤:
- 在linux系统检查有无openjdk:8-jdk-alpine镜像
docker images
- 如果没有,需要去镜像仓库拉取镜像,比如DockerHub
- 复制命令到linux系统控制台
docker pull openjdk:8-jdk-alpine
运行成功
- 在linux系统新建一个空目录,然后在目录中新建一个文件,命令为Dockerfile,拷贝java项目的jar包docker-demo.jar到这个目录中
- 编写Dockerfile文件
- 基于openjdk:8-jdk-alpine作为基础镜像
- 将xxx.jar拷贝到镜像中
- 暴露端口
- 编写入口ENTRYPOINT 内容如下:
# 基础镜像
FROM openjdk:8-jdk-alpine
# 设定时区
ENVTZ=Asia/ShanghaiRUN ln -snf /usr/share/zoneinfo/$TZ/etc/localtime && echo $TZ>/etc/timezone
# 拷贝jar包
COPY docker-demo.jar /tmp/app.jar
#开放端口
EXPOSE8090
# 入口
ENTRYPOINT["java","-jar","/tmp/app.jar"]
- 进入到当前文件夹目录,然后使用docker build命令构建镜像
docker build -t docker-demo .
-t:是给镜像起名,格式依然是repository:tag的格式,不指定tag时,默认为latest;
. :是指定Dockerfile所在目录,如果就在当前目录,则指定为“.”;
- 此时再用docker images命令可查看构建出来的镜像
- 使用docker run创建容器并运行
docker run -d --name dd -p 8090:8090 docker-demo
运行成功!
10. 使用docker logs -f [容器名称]命令在控制台打印日志
docker logs -f dd
- 在浏览器输入访问地址及接口信息即可访问项目
版权归原作者 早起的虫儿被吃 所有, 如有侵权,请联系我们删除。