docker制作镜像 理论知识讲解!

一、Docker镜像的创建

1.创建docker镜像的姿势:

  • 基于已有镜像创建
  • 基于本地模板创建
  • 基于Dockerfile创建
1.1 基于已有镜像创建

将容器里面运行的程序及运行环境打包生成新的镜像

docker create -it centos /bin/bash

docker commit -m “new” -a “daoke” id daoke:centos

  • -m:说明信息
  • -a:作者信息
  • -p:生成过程中停止容器的运行
1.2 基于本地模板创建

通过导入操作系统模板文件生成新的镜像,使用wget命令导入为本地镜像

wget http://123.56.134.27/pub/package/LAMP-C7/nginx-1.12.0.tar.gz
 
cat nginx-1.12.0.tar.gz | docker import - docker:new

docker images    //查看镜像
1.3基于Dockerfile创建
  • Dockerfile是由一组指令组成的文件
  • Dockerfile四部分:
    • 基础影响信息
    • 维护者信息
    • 镜像操作指令
    • 容器启动时执行指令

二、dockerfile指令含义

指令含义
FROM镜像指定新镜像所基于的镜像,第一条指令必须为FROM指令,每创建一个镜像就需要FFROM指令。
MAINTAINER 名字说明新镜像的维护人信息
RUN命令在所基于的镜像上执行命令,并提交到新的镜像中
CMD[ “要运行的程序","参数1,“参数2 "]指令启动容器时要运行的命令或者脚本,Dockerfile只能有一条CMD命令,如果指定多条则只能最后f被执行
EXPOSE 端口号指定新镜像加载到Docker时要开启的端口
ENV环境变量变量值设置一个环境变量的值,会被后面的RUN使用
ADD源文件/目录目标文件/目录将源文件复制到目标文件,源文件要与Dockerfile位于相同目录中,或者是f URL
COPY源文件/目录目标文件/目录将本地主机上的文件/目录复制到目标地点,源文件/目录要与DGckerfile在相同的目录中
VOLUME [“目录”]在容器中创建一个挂载点
USER用户名/UID指定运行容器时的用户
WORKDIR 路径为后续的RUN、CMD、ENTRYPOINT指定工作目录
ONBUILD 命令指定所生成的镜像作为一个基础镜像时所要运行的命令
HEALTHCHECK健康检查

三、Dockerfile创建各种容器

在我的这篇博客中:https://editor.csdn.net/md/?articleId=109752005 有详细的操作!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值