当前位置: 首页 > news >正文

齐博企业网站怎么做一个网站的步骤

齐博企业网站,怎么做一个网站的步骤,做网站优化多少钱,新网页游戏传奇目录 一、Dockerfile保留字是什么? 二、Docker构建流程 1. 从基础镜像运行容器 2. 执行指令并修改容器 3. 提交新的镜像层 4. 基于新镜像运行新容器 5. 执行下一条指令 6. 循环执行指令 7. 所有指令执行完成 三、保留字 1. FROM 使用基础镜像作为起点 2.…

目录

一、Dockerfile保留字是什么?

二、Docker构建流程

1. 从基础镜像运行容器

2. 执行指令并修改容器

3. 提交新的镜像层

4. 基于新镜像运行新容器

5. 执行下一条指令

6. 循环执行指令

7. 所有指令执行完成

三、保留字

1. FROM 使用基础镜像作为起点

2. LABEL 指定镜像的维护者信息

3. USER 指定的用户

4. RUN 容器构建时需要运行的命令

5. COPY 复制本地文件或目录到镜像中

6. ADD 将文件的文件拷贝进镜像

7. WORKDIR 设置工作目录

8. ENV 设置环境变量

9. EXPOSE 当前容器对外暴露出的端口

10. ENTRYPOINT 用来指定一个容器启动时要运行的命令

11. CMD 定义容器启动时运行的默认命令

12. VOLUME 容器数据卷


一、Dockerfile保留字是什么?

在 Dockerfile 中,有一些关键字或指令是被认定为保留字的,它们具有特殊的含义,用于定义 Docker 镜像的构建过程。指令告诉 Docker 如何从基础镜像创建一个新的镜像。

二、Docker构建流程

1. 从基础镜像运行容器

  • Docker 引擎从指定的基础镜像开始创建一个新的容器实例。

2. 执行指令并修改容器

  • Dockerfile 中的每个指令都会导致容器内部的文件系统、环境变量等发生相应的修改。

3. 提交新的镜像层

  • 当容器内的修改达到一个阶段时,可以执行 docker commit 或类似的操作,将容器的状态保存为一个新的镜像层。
  • 这个新的镜像层包含了容器的变更,形成一个新的镜像。

4. 基于新镜像运行新容器

  • 使用刚刚创建的新镜像,Docker 引擎再次运行一个新的容器实例。

5. 执行下一条指令

  • Docker 引擎在新容器内执行 Dockerfile 中的下一条指令,导致新的修改和状态。

6. 循环执行指令

  • 迭代上述过程,逐步执行 Dockerfile 中的每一条指令,每次都可能创建一个新的镜像层。

7. 所有指令执行完成

  • 当 Dockerfile 中的所有指令都被成功执行后,得到的最终镜像即为包含了所有修改和变更的最终版本

三、保留字

1. FROM 使用基础镜像作为起点

Dockerfile第一条必须是FROM

# 使用基础镜像作为起点
FROM ubuntu:20.04

2. LABEL 指定镜像的维护者信息

LABEL version="1.0" description="My Docker Image" maintainer="your_name <your_email@example.com>"

ps:MAINTAINER:指定镜像的维护者

Docker 1.13 被标记为已弃用,指定镜像的维护者(建议使用 LABEL 替代) 

因为 Docker 社区更倾向于使用 LABEL 来提供元数据

MAINTAINER your_name <your_email@example.com>

3. USER 指定的用户

指定该镜像以什么样的用户去执行,如果不指定,默认是root

USER 【userName】

4. RUN 容器构建时需要运行的命令

在镜像中执行命令,更新软件包列表并安装一些软件包

两种格式:

  • shell格式
# 等同于在终端操作的shell命令
# 格式:RUN <命令行命令>
RUN yum -y install vim
  • exec格式
# 格式:RUN ["可执行文件" , "参数1", "参数2"]
RUN ["./test.php", "dev", "offline"]  # 等价于 RUN ./test.php dev offline

RUN是在docker build时运行

5. COPY 复制本地文件或目录到镜像中

COPY 【源路径】【容器路径】

6. ADD 将文件的文件拷贝进镜像

将宿主机目录下(或远程文件)的文件拷贝进镜像,且会自动处理URL和解压tar压缩包。

ADD https://example.com/file.tar.gz /tmp/

7. WORKDIR 设置工作目录

# 设置工作目录,后续命令将在该目录下执行

WORKDIR /app

8. ENV 设置环境变量

用来在构建镜像过程中设置环境变量。

这个环境变量可以在后续的任何RUN指令或其他指令中使用

# 格式 ENV 环境变量名 环境变量值
# 或者 ENV 环境变量名=值
ENV MY_PATH /usr/mytest# 使用环境变量
WORKDIR $MY_PATH

9. EXPOSE 当前容器对外暴露出的端口

EXPOSE 80

10. ENTRYPOINT 用来指定一个容器启动时要运行的命令

类似于CMD命令,但是ENTRYPOINT不会被docker run后面的命令覆盖,这些命令参数会被当做参数送给ENTRYPOINT指令指定的程序。

ENTRYPOINT可以和CMD一起用,一般是可变参数才会使用CMD,这里的CMD等于是在给ENTRYPOINT传参。

当指定了ENTRYPOINT后,CMD的含义就发生了变化,不再是直接运行期命令,而是将CMD的内容作为参数传递给ENTRYPOINT指令,它们两个组合会变成 <ENTRYPOINT> "<CMD>"。

FROM nginxENTRYPOINT ["nginx", "-c"]  # 定参
CMD ["/etc/nginx/nginx.conf"] # 变参

对于此Dockerfile,构建成镜像 nginx:test后,如果执行;

docker run nginx test,则容器启动后,会执行 nginx -c /etc/nginx/nginx.conf 

docker run nginx:test /app/nginx/new.conf,则容器启动后,会执行 nginx -c /app/nginx/new.conf

11. CMD 定义容器启动时运行的默认命令

指定容器启动后要干的事情。

有两种格式:

  • shell格式
# CMD <命令>
CMD echo "hello world"
  • exec格式
# CMD ["可执行文件", "参数1", "参数2" ...]
CMD ["catalina.sh", "run"]
  • 与ENTRYPOINT指令配合使用
# CMD ["参数1", "参数2" ....],与ENTRYPOINT指令配合使用

12. VOLUME 容器数据卷

容器数据卷,用于数据保存和持久化工作。类似于 docker run 的-v参数。

VOLUME 挂载点

挂载点可以是一个路径,也可以是数组

ps:数组中的每一项必须用双引号

VOLUME /var/lib/mysql
http://www.hkea.cn/news/435369/

相关文章:

  • 做游戏网站有几个要素seo网站关键词优化报价
  • 蓬业东莞网站建设技术支持东莞做网站公司首选
  • 网站版式设计获客渠道有哪些
  • 今日军事新闻简短扬州seo优化
  • 国外好看的教育类网站模板下载东莞做网站最好的是哪家
  • 微擎与wordpress快速优化seo软件推广方法
  • 英文网站设计哪家好免费网站搭建
  • 网站建设公司 销量深圳谷歌seo公司
  • 新蔡哪有做网站建设的全球疫情今天最新消息
  • 怎么做平台网站百度seo报价方法
  • 帮人做网站 怎么收费怎么用网络推广
  • 网站排名优化建设百度广告投放技巧
  • 文件服务器网站搭建教程好的竞价托管公司
  • 黑龙江省城乡和住房建设厅网站首页百度链接地址
  • 网站模板修改工具专业seo关键词优化
  • 口碑好的句容网站建设yahoo搜索
  • 深圳网站建设外贸公司价格网络营销的背景和意义
  • 长春网站建设硕成传媒seo快速排名优化公司
  • web网站开发能使用c 吗免费建立个人网站申请
  • 织梦网站修改教程视频网站优化培训学校
  • 南沙区交通和建设局网站中国十大网络销售公司
  • 免费建设网站的方法百度网址大全 官网
  • 手机网站设计制作公司微信推广费用一般多少
  • 建设网站需要什么注册域名费用一般多少钱
  • 女性门户网站源码百度指数功能有哪些
  • 怎么帮公司做网站建设谷歌搜索引擎免费入口 香港
  • 请写出网站建设前期需要做的准备外贸定制网站建设电话
  • 南京门户网站建设网络营销优秀案例
  • 2012服务器如何做网站周口网络推广哪家好
  • 贵阳搜索玩的网站网络舆情软件免费入口