docker学习笔记(四)Dockerfile的编写

Dockerfile的编写

Dockerfile的概念在docker学习笔记(三)Dockerfile的概念中已经介绍的很清楚了,现在可以尝试简易的尝试一下编写Dockerfile

Dockerfile可以允许用户自定义镜像,就代表我们可以把一些常用的环境打到镜像中,这样在不同的机器上我们只需要安装Docker环境,然后直接下载我们自己制作的镜像,可以省去很多环境的麻烦,当然Dockerfile肯定不会在实际应用中这样用的,因为我们后期可以使用maven插件直接将我们的应用程序打包上传,但是对于用户自定义镜像来说Dockerfile的编写是必不可少的

我们以制作jdk和maven环境的镜像来作为例子,制作镜像的过程更像是在安装环境,不过可以将安装好的环境打包,在存在Docker环境的机器上使用

1.准备环境
  • jdk和maven的安装包,这里使用的是jdk1.8 和maven3.3.9
  • linux/windows/mac 机器需要安装docker环境,不会的可以自行百度(这里使用linux系统)
2.编写Dockerfile

1.创建一个单独的文件夹用来存放Dockerfile和安装文件

mkdir docker-jdk-maven
cd docker-jdk-maven

2.创建一个Dockerfile文件

touch Dockerfile

3.将jdk的安装包和maven的安装包上传至linux系统中(安装包与Dockerfile同级目录)
4.编写Dockerfile

# 指定基础镜像
FROM centos:7
# 镜像维护者信息
MAINTAINER mrwhite
# 添加jdk的安装包和maven的安装包 到容器中
ADD jdk-8u73-linux-x64.tar.gz /usr/local 
ADD apache-maven-3.3.9-bin.tar.gz /usr/local
# 设置java环境变量 
ENV JAVA_HOME=/usr/local/jdk1.8.0_73
ENV PATH=$JAVA_HOME/bin:$PATH

ENV MAVEN_HOME=/usr/local/apache-maven-3.3.9
ENV PATH=$MAVEN_HOME/bin:$PATH
3.构建Docker镜像

在文件夹内运行命令,注意最后的点(.)

docker build -t mejdk8 .

控制台输出如下

Sending build context to Docker daemon  189.8MB
Step 1/8 : FROM ubuntu:16.04
 ---> a3551444fc85
Step 2/8 : MAINTAINER bj
 ---> Using cache
 ---> fb4fb6f7679c
Step 3/8 : ADD jdk-8u73-linux-x64.tar.gz /usr/local/
 ---> Using cache
 ---> 643667473c24
Step 4/8 : ADD apache-maven-3.3.9-bin.tar.gz /usr/local/
 ---> Using cache
 ---> 81f23bcb519f
Step 5/8 : ENV JAVA_HOME=/usr/local/jdk1.8.0_73
 ---> Using cache
 ---> 784982044995
Step 6/8 : ENV PATH=$JAVA_HOME/bin:$PATH
 ---> Using cache
 ---> 4bd064320a05
Step 7/8 : ENV MAVEN_HOME=/usr/local/apache-maven-3.3.9
 ---> Using cache
 ---> 059eff930bf8
Step 8/8 : ENV PATH=$MAVEN_HOME/bin:$PATH
 ---> Using cache
 ---> b3359a98e838
Successfully built b3359a98e838
Successfully tagged mejdk8:latest

使用docker images可查看镜像

docker images
4.运行Docker容器
docker run -it mejdk8 bash

进入到docker容器后使用验证使用java命令和maven命令,成功即为镜像制作成功

这种的只是最简单的docker镜像的制作方法,复杂的可以自行研究一下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值