Dockerfile基本操作命令及简介

1.什么是Dockerfile

1.dockerfile是一个文本格式的配置文件, 用户可以使用 Dockerfile 来快速创建自定义的镜像

2.Dockerfile的基本结构

1.基础镜像信息 FROM 指定哪种镜像为新镜像的基础镜像,比如ubuntu,centos
2.维护者信息 MAINTAINER 指明该镜像的作者和其电子邮件

镜像操作指令
1.USER 指定运行容器时的用户名或 UID,后续的 RUN 也会使用指定用户
2.WORKDIR 在构建镜像时,指定镜像的工作目录
3.(COPY/ADD) COPY单纯的复制 ADD复制之后还会对文件进行提取和解压等操作
4EVN配置坏境变量
5EXPOSE 指定容器要暴露的端口
6.VOLUME 用来向基于镜像创建的容器添加数据卷
7. RUN 在新镜像内部要执行的命令,比如安装一些软件、配置一些基础环境,可使用\来换行

容器启动时执行指令
1.CMD、比如:CMD [“java”,"-jar",“eureka-server-cluster.jar”,“spring.profiles=peer1”]

指定启动容器时执行的命令,每个 Dockerfile 只能有一条 CMD 命令。如果指定了多条命令,只有最后一条会被执行。如果用户启动容器时候指定了运行的命令,则会覆盖掉 CMD 指定的命令。
2.ENTRYPOINT 配置容器启动后执行的命令,并且不可被 docker run 提供的参数覆盖。每个 Dockerfile 中只能有一个 ENTRYPOINT ,当指定多个时,只有最后一个起效
3.结论ENTRYPOINT 不能覆盖掉执行时的参数,CMD 可以掉覆盖默认的参数

3.使用Dockerfile基于centos创建JDK8的镜像

1.创建文件夹上传jdk的安装包,和在同级目录下编写Dockerfile文件 touch Dockerfile
2.编写 Dockerfile 文件
1.指定基础镜像

FROM centos:latest

2.指明该镜像的作者和其电子邮件

MAINTAINER zs "zs@qq.com"

3.在构建镜像时,指定镜像的工作目录

WORKDIR /zking/java

4.把jdk安装文件复制到镜像中

ADD jdk-8u221-linux-x64.tar.gz /zking/java/

5.配置环境变量

ENV JAVA_HOME=/zking/java/jdk1.8.0_221
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH

3.执行Dockerfile文件,构建jdk8的镜像

docker build -t jdk8:v1.0 .

4.查看镜像

docker images

5.创建并启动容器

docker run -it -d --name tomcat02 jdk8:v1.0 /bin/bash

6.进入容器

docker exec -it tomcat02 bash

7.检查是否有问题

javac 或者 java-version

4. 基于最小的操作系统Alpine的镜像构建容器

1.docker images
2.docker pull alpine
3.docker images
4.docker ps -a 
5.docker run -itd --name tomcat01 alpine:latest /bin/sh
6.docker ps -a
7.docker exec -it tomcat01 sh
	sh
8.ls(可以看到也是一个类似linux的坏境的容器)
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值