使用docker仓库的镜像比较简单,但是也有局限性。有时候我们需要定制某个环境,启动一些fullcode开发的服务,那这时候就需要使用dockfile来定制image了。
构建一个JDK 1.8环境的images
1: 创建一个可以build 具有jdk1.8环境的dockerfile 文件
vi Dockerfile
FROM centos:7
ADD jdk-8u281-linux-x64.tar.gz /usr/local
ENV JAVA_HOME /usr/local/jdk1.8.0_281
ENV JRE_HOME /usr/local/jdk1.8.0_281/jre
ENV PATH $JAVA_HOME/bin:$PATH
2: 上传JDK 1.8 安装包到Dockerfile同级目录下
3: 构建镜像
docker build -t centos7-jdk8:v1 .
![](https://img.haomeiwen.com/i12244945/4996f7b751fbc006.png)
看到上图中的
Success tagged xxxx
,说明构建成功
基于上一步构建的镜像构建可以运行自建应用的镜像
1: 创建一个可以运行自建应用的镜像的dockerfile 文件
指定运行环境为,centos + jdk 1.8
FROM centos7-jdk8:v1
RUN mkdir -p /usr/local/web
COPY oauthclient-1.0-SNAPSHOT.jar /usr/local/web
EXPOSE 8095
WORKDIR /usr/local/web
CMD ["java", "-jar", "oauthclient-1.0-SNAPSHOT.jar"]
2: 上传joauthclient-1.0-SNAPSHOT.jar到Dockerfile同级目录下
scp /Users/xxx/oauthclient/target/oauthclient-1.0-SNAPSHOT.jar root@1.2.1.2:/usr/opt
3: 构建镜像
docker build -t testserver:v1 .
![](https://img.haomeiwen.com/i12244945/b0b27a1d35bbf009.png)
4: 启动镜像,并在浏览器测试
docker run -p 8095:8095 -d testserver:v1
![](https://img.haomeiwen.com/i12244945/493909e23d85eac6.png)
网友评论