编写dockerfile生成镜像,并且构建容器运行

编写dockerfile生成镜像,并且构建容器运行

目录

编写dockerfile生成镜像,并且构建容器运行

概述

一、dockerfile文件详解

Dockerfile的基本结构

Dockerfile的常用指令

二、构建过程

概述

随着微服务应用越来越多,大家需要尽快掌握docker的基本使用,借着本文简单介绍一下dockerfile文件的结构,希望对读者有所帮助。

一、dockerfile文件详解

Dockerfile是一个文本文件,包含了一系列用于构建镜像的指令。每条指令都会构建一层镜像,指令的内容描述了该层镜像应如何构建。Dockerfile可以使用docker build命令进行编译,构建出Docker镜像。用户可以将自己的应用打包成镜像,从而让应用在容器中运行,还可以对官方镜像进行扩展,打包成适合生产环境的应用镜像。

Dockerfile的基本结构

Dockerfile包含两种类型的行:以#开头的注释行和以专用"指令"开头的指令行。ImageBuilder按顺序执行各指令,从而完成镜像构建。Dockerfile中的每条指令都会创建一层镜像,指令的执行顺序从上至下。

Dockerfile的常用指令

​‌FROM‌:初始化一个新的构建阶段,并设置基础镜像。

MAINTAINER:指定作者信息(注意:新版Docker中推荐使用LABEL来替代)。

RUN‌:在当前镜像之上执行命令。 ‌‌

ADD‌:复制新的文件、目录或远程文件URL到镜像中。 ‌

COPY‌:复制本地文件、目录或远程文件URL到镜像中。 ‌‌

CMD‌:运行程序,在docker run时运行。 ‌‌

ENTRYPOINT‌:配置容器启动时运行的命令。 ‌

LABEL‌:给镜像添加元数据。 ‌‌

ENV‌:设置环境变量。 ‌‌

EXPOSE‌:声明容器运行时需要监听的端口。 ‌‌

VOLUME‌:设置卷,用于数据持久化或共享数据。 ‌‌

WORKDIR‌:设置工作目录。 ‌

USER‌:指定运行容器时的用户名或UID。 ‌

ARG‌:定义变量,供构建时使用。 ‌

ONBUILD‌:当构建一个被继承的Dockerfile时运行命令。 ​

二、构建过程

构建镜像的命令是:

复制代码
docker build -t my-image-name:my-tag .

其中,-t 参数用来指定镜像的名字和可选的标签(tag),. 指定了Dockerfile文件所在的目录。

如下示例:

FROM ubuntu:18.04

RUN apt-get update && apt-get install -y \

git \

python3 \

python3-pip

COPY . /app

WORKDIR /app

CMD ["python3", "app.py"]

构建这个Dockerfile的命令是:

docker build -t my-python-app:latest .

相关推荐
happymaker06262 小时前
SpringBoot学习日记——DAY02(SpringBoot整合Swagger3)
java·spring boot·学习
未若君雅裁3 小时前
Spring Boot 自动配置原理与常用注解
java·spring boot·后端
卧室小白5 小时前
docker容器
运维·docker·容器
Benszen5 小时前
Docker容器化解决方案
运维·docker·容器
仙柒4157 小时前
Namespace
运维·docker·容器
pigs20188 小时前
Docker容器中Kingbase数据库授权到期更换解决方案
数据库·docker·容器
Yeh2020588 小时前
springboot+vue笔记
vue.js·spring boot·笔记
m0_751018669 小时前
docker 安装 nginx
vue.js·nginx·docker
YOU OU9 小时前
SpringBoot 配置文件
java·spring boot·后端