温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

docker build与Dockerfile问题怎么解决

发布时间:2023-03-09 09:47:24 来源:亿速云 阅读:138 作者:iii 栏目:开发技术

这篇文章主要讲解了“docker build与Dockerfile问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“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 . # 不使用缓存

    docker build与Dockerfile问题怎么解决

    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 .

    感谢各位的阅读,以上就是“docker build与Dockerfile问题怎么解决”的内容了,经过本文的学习后,相信大家对docker build与Dockerfile问题怎么解决这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI