Docker——DockerFile

什么是 Dockerfile

Dockerfile是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。

Dockerfile 语法

官网地址

  • FROM:指定 Base image,定制的镜像都是基于 FROM 的镜像,尽量使用官网 Image
  • RUN:用于执行后面跟着的命令行命令,Dockerfile 的指令每执行一次都会在 docker 上新建一层。所以过多无意义的层,会造成镜像膨胀过大。可通过 && 符号连接
    • shell 格式:RUN <命令行命令,shell 命令>
    • exec 格式:RUN ["可执行文件", "参数1", "参数2"]
  • LABEL: 注释
  • WORKDIR:指定工作目录,没有会自动创建,尽量使用绝对目录
  • ADD:添加文件并解压缩
  • COPY:复制指令,从上下文目录中复制文件或者目录到容器里指定路径
  • ENV:设置常量,增加可维护性
  • VOLUME:定义匿名数据卷。在启动容器时忘记挂载数据卷,会自动挂载到匿名卷。
  • EXPOSE:仅仅只是声明端口。
  • CMD:CMD指令中只能有一条指令Dockerfile。如果您列出多个,CMD则只有最后一个CMD才会生效。
  • ENTRYPOINT:让容器以应用程序或服务的形式运行,不会被忽略,一定会执行

docker build

使用当前目录的 Dockerfile 创建镜像,标签为 runoob/ubuntu:v1,. 为当前目录

docker build -t runoob/ubuntu:v1 . 

发布 Image

自建 Image 发布到 DockerHub

登录 docker : docker login 输入用户名和密码

[root@localhost demo]# docker login
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: Username
Password: Password
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

通过 docker push ImageID:TAG

docker push e/demo:1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值