需求:基于openjdk:8-jdk-alpine镜像,将一个java项目构建为镜像
实现步骤:
docker images
如果没有,需要去镜像仓库拉取镜像,比如DockerHub复制命令到linux系统控制台
docker pull openjdk:8-jdk-alpine
运行成功
编写Dockerfile文件 基于openjdk:8-jdk-alpine作为基础镜像将xxx.jar拷贝到镜像中暴露端口编写入口ENTRYPOINT
内容如下:
# 基础镜像FROM openjdk:8-jdk-alpine# 设定时区ENV TZ=Asia/ShanghaiRUN 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"]
进入到当前文件夹目录,然后使用docker build命令构建镜像 docker build -t docker-demo .
-t:是给镜像起名,格式依然是repository:tag的格式,不指定tag时,默认为latest;
. :是指定Dockerfile所在目录,如果就在当前目录,则指定为“.”;
使用docker run创建容器并运行
docker run -d --name dd -p 8090:8090 docker-demo
运行成功!
10. 使用docker logs -f [容器名称]命令在控制台打印日志
docker logs -f dd
在浏览器输入访问地址及接口信息即可访问项目