我的编程空间,编程开发者的网络收藏夹
学习永远不晚

docker build与Dockerfile问题

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

docker build与Dockerfile问题

docker build与Dockerfile

docker build常用命令

docker build .  # 默认使用当前目录下Dockerfile
docker build . -f centosdockerfile  # 其他名称dockerfile,需要指定
docker build -t ghostwritten/app . # 指定镜像名
docker build -t ghostwritten/app:1.0.2 -t ghostwritten/app:latest . # 指定多个tag
# Dockerfile文件中的每条指令会被独立执行,并会创建一个新镜像,Docker 会重用已生成的中间镜像,以加速docker build的构建速度,也可以通过--cache-from指定
docker build -t ghostwritten/app --cache-from 31f630c65071 . 
docker build -t ghostwritten/app --no-cache . # 不使用缓存

Dockerfile

FROM 		# 构建自己所需镜像使用的基础镜像
MAINTAINER 	# 即将构建镜像的作者,格式为: 姓名<邮箱>
ENV 		# 设置环境变量
USER 		# 为RUN、CMD、ENTRYPOINT执行命令指定运行用户
WORKDIR 	# 镜像启动后在哪个工作目录
RUN 		# 镜像构建时需要的命令
COPY 		# 拷贝文件或目录到镜像中
ADD 		# 需要向镜像中注入的配置文件或者压缩包等
VOLUME 		# 挂载的目录,可以是匿名挂载或者具名挂载
EXPOSE		# 声明容器中运行的服务的端口
CMD 		# 容器启动的时候运行的指令,若写多个的话,只有一个生效,可以运行时在容器外部重新指定
ENTRYPOINT	# 与CMD命令类似,但ENTRYPOINT可以在容器外追加命令
ONBUILD 	# 当构建一个被继承DockerFile,这时会运行ONBUILD命令

docker build 指定dockerfile

docker build命令会根据Dockerfile文件及上下文构建新Docker镜像。

构建上下文是指Dockerfile所在的本地路径或一个URL(Git仓库地址)。

构建上下文环境会被递归处理,所以,构建所指定的路径还包括了子目录,而URL还包括了其中指定的子模块。

将当前目录做为构建上下文时,可以像下面这样使用docker build命令构建镜像:

$ docker build .
Sending build context to Docker daemon  6.51 MB
...

说明:构建会在Docker后台守护进程(daemon)中执行,而不是CLI中。构建前,构建进程会将全部内容(递归)发送到守护进程。大多情况下,应该将一个空目录作为构建上下文环境,并将Dockerfile文件放在该目录下。

在构建上下文中使用的Dockerfile文件,是一个构建指令文件。为了提高构建性能,可以通过.dockerignore文件排除上下文目录下,不需要的文件和目录。

Dockerfile一般位于构建上下文的根目录下,也可以通过-f指定该文件

$ docker build -f /path/to/a/Dockerfile .

构建时,还可以通过-t参数指定构建成后,镜像的仓库、标签等:

docker build -f Dockerfile.test -t image-train-test .

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

docker build与Dockerfile问题

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

docker build与Dockerfile问题

这篇文章主要介绍了docker build与Dockerfile问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-03-09

docker build与Dockerfile问题怎么解决

这篇文章主要讲解了“docker build与Dockerfile问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“docker build与Dockerfile问题怎么解决”吧!d
2023-07-05

Dockerfile中VOLUME与docker -v的区别是什么

这篇文章主要介绍Dockerfile中VOLUME与docker -v的区别是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Dockerfile 中的 VOLUME 挂载与 docker -v 命令挂载,两者有明
2023-06-14

Android 解决build path errors的问题

新建一个eclipse-android项目后,如test2,从其它项目中拷贝若干个包到test2中, 在编译时总会出现以下错误:主要看第三条:The project cannot be built until build path erro
2022-06-06

如何解决docker与vmware的冲突问题

这篇文章给大家分享的是有关如何解决docker与vmware的冲突问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、docker启动问题:问题解决:需要开启Hyper-V,(开启方法:控制面板->程序->程序
2023-06-14

docker安装es与kibana的过程及遇到问题

本文介绍了如何使用Docker安装和配置Elasticsearch和Kibana。文章提供了详细的分步说明,包括拉取镜像、创建数据卷和运行容器。还讨论了常见的故障排除问题,例如Elasticsearch无法启动或Kibana无法连接到Elasticsearch。
docker安装es与kibana的过程及遇到问题
2024-04-02

如何分析docker中 WSL 配置与修改问题

本篇文章为大家展示了如何分析docker中 WSL 配置与修改问题,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。存储在%UserProfile%目录中。用于在作为WSL2版本运行的所有已安装Linu
2023-06-22

Docker中容器的创建与启停问题怎么解决

今天小编给大家分享一下Docker中容器的创建与启停问题怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1. 镜像和容
2023-07-01

docker run hangs问题排查记录

1. 检查Docker daemon是否正在运行。可以使用命令`sudo systemctl status docker`来检查Docker daemon的运行状态。如果Docker daemon未运行,则可以使用`sudo systemc
2023-09-08

ubuntu中build-essential依赖关系问题怎么解决

在Ubuntu中,可以通过以下步骤解决`build-essential`依赖关系问题:1. 更新软件包列表:打开终端并运行以下命令:```sudo apt update```2. 解决依赖关系问题:运行以下命令安装`build-essent
2023-09-22

编程热搜

目录