用Dockerfile文件自定义docker镜像

本文介绍了Dockerfile的作用,它是用于定义Docker镜像构建步骤的文本文件。文章详细解释了Dockerfile的基本结构,常用指令以及操作步骤,强调了Dockerfile在简化应用程序部署和管理中的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,Dockerfile是什么?

Dockerfile 是用于构建 Docker 镜像的文本文件。它包含了一系列的指令,用于描述如何构建镜像的步骤和配置,可以定义镜像的基础环境、安装软件包、复制文件、设置环境变量等操作。

Dockerfile 提供了一种可重复、可自动化的方式来构建镜像,使得您可以轻松地创建和部署应用程序的容器化版本,可以根据自己的需求和项目的特点来定义构建镜像的步骤和配置。

Dockerfile的基本结构包括四个部分:基础镜像信息、维护者信息、镜像操作指令和容器启动时执行指令。

在Dockerfile中可以使用多种指令,例如RUN、CMD、FROM、EXPOSE、ENV等。这些指令可以用来定义镜像的操作系统、软件安装、环境变量等,编写好 Dockerfile,您可以使用 Docker 命令来构建镜像。通过运行 docker build 命令并指定 Dockerfile 的路径,Docker 引擎将根据Dockerfile 中的指令逐步执行构建过程,生成一个新的镜像。

总结来说:Dockerfile 是一个用于定义构建 Docker 镜像的文本文件,它提供了一种可重复、可自动化的方式来构建和配置镜像,使得容器化应用程序的构建和部署更加简单和可靠。

二,dockerfile中的常用指令

指令        描述
ADD   添加本地或远程文件和目录
ARG        使用生成时变量
CMD        指定默认命令
CPPY复制文件和目录
ENTRYPOINT指定默认可执行文件
ENV        设置环境变量
EXPOSE描述您的应用程序正在侦听哪些端口
FROM从基础映像创建新的生成阶段
HEALTHCHECK在启动时检查容器的运行状况
LABEL向图像添加元数据
MAINTAINER指定作者
ONBUILD指定何时在生成中使用映像的说明
RUN执行生成命令
SHELL设置映像的默认 shell
STOPSIGNAL指定退出容器的系统调用信号
USER设置用户和组 ID
VOLUME创建卷挂载
WORKDIR更改工作目录

详细格式参考官网文档:Dockerfile reference | Docker Docs

三,操作步骤

准备工作:随便准备一个简单的后端程序(我的为node.js)

可以理解为Dockerfile文件是将一些操作封装在一个文件里面来实现可持久更新和使用,不使用Dockerfile文件运行程序的时候是这样的:

1)拉取基础镜像

docker pull node:14

2)查看拉取是否成功:

docker images

3)运行镜像

docker run -dt --name=node14 -p 3000:3000 node:14
 

4)将程序copy到容器里面

5)运行程序

6)主机测试

        以上步骤是不用dockerfile文件,直接运行程序的方法,虽然效果实现了,但是后续程序有更新,还需要重复大量的步骤,所以还是使用dockerfile文件较为稳妥,以下步骤:

1)在宿主机创建目录,并创建Dockerfile文件和程序文件:

2)编写Dockerfile文件:vim Dockerfile

3)生成镜像文件

docker build -t my-server .    mysql-server为自定义名称

4)查看镜像

5)运行构建的docker镜像

6)外网测试

完结撒花!!!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值