Dockerfile基本语法
Dockerfile就是一个文本文件,其中包含一个个的指令(Instruction),用指令来说明要执行什么操作来构建镜像。每一个指令都会形成一层Layer。
基于ubuntu构建java项目
步骤1:新建一个空文件夹docker-mysql
步骤2:拷贝项目jar包,jdk等资料到文件夹中
docker-demo.jar
jdk8.tar.gz
Dockerfile
3个文件到docker-mysql这个目录
其中Dockerfile文件内容如下:
# 指定基础镜像
FROM ubuntu:16.04
# 配置环境变量,JDK的安装目录
ENV JAVA_DIR=/usr/local
# 拷贝jdk和java项目的包
COPY ./jdk8.tar.gz $JAVA_DIR/
COPY ./docker-demo.jar /tmp/app.jar
# 安装JDK
RUN cd $JAVA_DIR \
&& tar -xf ./jdk8.tar.gz \
&& mv ./jdk1.8.0_144 ./java8
# 配置环境变量
ENV JAVA_HOME=$JAVA_DIR/java8
ENV PATH=$PATH:$JAVA_HOME/bin
# 暴露端口
EXPOSE 8080
# 入口,java项目的启动命令
ENTRYPOINT java -jar /tmp/app.jar
步骤3:进入docker-mysql文件夹 运行构建
docker build -t xwdx:1.0 .
步骤4:运行这个镜像
docker run --name xwdx -d -p 8080:8080 xwdx:1.0
基于java8构建java项目
需求:基于java:8-alpine镜像,将一个Java项目构建为镜像
实现思路如下:
① 新建一个空的目录,然后在目录中新建一个文件,命名为Dockerfile
② 拷贝课前资料提供的docker-demo.jar到这个目录中
③ 编写Dockerfile文件:
FROM xetys/java-8-docker:v2 #选择一个
COPY ./docker-demo.jar /tmp/app.jar
EXPOSE 8090
ENTRYPOINT java -jar /tmp/app.jar
④ 使用docker build命令构建镜像
注意:先删除之前运行的容器否则端口号冲突
⑤ 使用docker run创建容器并运行