|
|
|
|
移动端

大赢家国际:如何构建 Fedora 容器镜像

本文来源:http://www.133845.com/www_dawugeweb_com/

申博官网下载直营网,  有分析指出:这些财产,很多不是王宝强名下的,马蓉手快拿走,完全合法。此外,知情人还透露王宝强借钱付诉讼费是因为他确实没钱,去几家银行查询账户发现转进来的钱没多久就被转走,而就连他自己都不太清楚9套房产的具体位置。走向百年:建设世界一流的美术学院从北京奥运会的“金镶玉”奖牌,到APEC晚宴用瓷;从董希文的巨幅油画《开国大典》,到唐勇力的中国画《新中国诞生》;从上海世博会国家馆的艺术设计,到去年阅兵仪式上歼10战机的战袍;从西藏、新疆两个自治区庆典的中央代表团礼品,到“海上丝绸之路艺术公园”;从“文明的回响”系列展览,到学院美术馆的双年展……范迪安向记者娓娓道来央美的优异成绩单。这意味着航天员在340天的旅程中,环绕地球5440圈,理论上他们可以看到1万多次日出日落,每天就能欣赏16次日出日落美景。

那么,口腔溃疡有几种类型:口腔溃疡的3类型1、轻型约占患者的80%,多数患者初发病时均为此型。说道长寿食物,大家一定要知道荠菜,天然的护生草。入宋以后,“狮子戏绣球纹”开始盛行,时称“狮球纹”,如宋代定窑白釉瓷盘上有印花“狮球纹”。如陕西乾陵的石狮高度均在3米以上,姿态雄伟,气势非凡,寓写实于装饰,有极强的视觉冲击力,堪称石狮雕刻的巅峰之作。

我们必须摆脱片面化绝对化的思维方式,摆脱零和博弈,摆脱不是“你吃掉我就是我吃掉你”的斗争模式,必须学会倾听对方,在对方的言说中丰富完善自己的思想。桂圆(龙眼干)中含尼克酸高达2.5毫克(每100克),可用于治疗尼克酸缺乏造成的皮炎、腹泻、痴呆,甚至精神失常等。”(李洋)(责编:欧兴荣、陈苑)在快速的生精过程中,各种有害因素产生的危害作用在蓄积和累加之后明显增大。

随着容器和容器技术的兴起,现在所有主流的 Linux 发行版都提供了容器基础镜像。本文介绍了 Fedora 项目如何构建其基本镜像,同时还展示了如何使用它来创建分层图像。

作者:Clément Verna来源:Linux中国|2019-09-10 13:34

随着容器和容器技术的兴起,现在所有主流的 Linux 发行版都提供了容器基础镜像。本文介绍了 Fedora 项目如何构建其基本镜像,同时还展示了如何使用它来创建分层图像。

基础和分层镜像

在看如何构建 Fedora 容器 基础镜像(base image)之前,让我们定义基础镜像和 分层镜像(layered image)。定义基础镜像的简单方法是没有父镜像层的镜像。但这具体意味着什么呢?这意味着基础镜像通常只包含操作系统的根文件系统基础镜像(rootfs)。基础镜像通常提供安装软件以创建分层镜像所需的工具。

分层镜像在基础镜像上添加了一组层,以便安装、配置和运行应用。分层镜像在 Dockerfile 中使用 FROM 指令引用基础镜像:

  1. FROM fedora:latest 

如何构建基础镜像

Fedora 有一整套用于构建容器镜像的工具。 其中包括 podman ,它不需要以 root 身份运行。

构建 rootfs

基础镜像主要由一个 tarball 构成。这个 tarball 包含一个 rootfs。有不同的方法来构建此 rootfs。Fedora 项目使用 kickstart 安装方式以及 imagefactory 来创建这些 tarball。

在创建 Fedora 基础镜像期间使用的 kickstart 文件可以在 Fedora 的构建系统 Koji 中找到。 Fedora-Container-Base 包重新组合了所有基础镜像的构建版本。如果选择了一个构建版本,那么可以访问所有相关文件,包括 kickstart 文件。查看 示例 ,文件末尾的 %packages 部分定义了要安装的所有软件包。这就是让软件放在基础镜像中的方法。

使用 rootfs 构建基础镜像

rootfs 完成后,构建基础镜像就很容易了。它只需要一个包含以下指令的 Dockerfile:

  1. FROM scratch 
  2. ADD layer.tar / 
  3. CMD ["/bin/bash"

这里的重要部分是 FROM scratch 指令,它会创建一个空镜像。然后,接下来的指令将 rootfs 添加到镜像,并设置在运行镜像时要执行的默认命令。

让我们使用 Koji 内置的 Fedora rootfs 构建一个基础镜像:

  1. $ curl -o fedora-rootfs.tar.xz /kojipkgs_fedoraproject_org/packages/Fedora-Container-Base/Rawhide/20190902.n.0/images/Fedora-Container-Base-Rawhide-20190902.n.0.x86_64.tar.xz 
  2. $ tar -xJvf fedora-rootfs.tar.xz 51c14619f9dfd8bf109ab021b3113ac598aec88870219ff457ba07bc29f5e6a2/layer.tar  
  3. $ mv 51c14619f9dfd8bf109ab021b3113ac598aec88870219ff457ba07bc29f5e6a2/layer.tar layer.tar 
  4. $ printf "FROM scratch\nADD layer.tar /\nCMD [\"/bin/bash\"]" > Dockerfile 
  5. $ podman build -t my-fedora . 
  6. $ podman run -it --rm my-fedora cat /etc/os-release 

需要从下载的存档中提取包含 rootfs 的 layer.tar 文件。这在 Fedora 生成的镜像已经可以被容器运行时使用才需要。

因此,使用 Fedora 生成的镜像,获得基础镜像会更容易。让我们看看它是如何工作的:

  1. $ curl -O /kojipkgs_fedoraproject_org/packages/Fedora-Container-Base/Rawhide/20190902.n.0/images/Fedora-Container-Base-Rawhide-20190902.n.0.x86_64.tar.xz 
  2. $ podman load --input Fedora-Container-Base-Rawhide-20190902.n.0.x86_64.tar.xz 
  3. $ podman run -it --rm localhost/fedora-container-base-rawhide-20190902.n.0.x86_64:latest cat /etc/os-release 

构建分层镜像

要构建使用 Fedora 基础镜像的分层镜像,只需在 FROM 行指令中指定 fedora:

  1. FROM fedora:latest 

latest 标记引用了最新的 Fedora 版本(编写本文时是 Fedora 30)。但是可以使用镜像的标签来使用其他版本。例如,FROM fedora:31 将使用 Fedora 31 基础镜像。

Fedora 支持将软件作为容器来构建并发布。这意味着你可以维护 Dockerfile 来使其他人可以使用你的软件。关于在 Fedora 中成为容器镜像维护者的更多信息,请查看 Fedora 容器指南 。

【编辑推荐】

  1. 申博官网下载直营网Linux 里的 exFAT 是微软的“特洛伊木马”
  2. Linux怎么设置环境变量
  3. 5分钟学会两年经验Linux运维都不懂的内核问题
  4. 28个Unix/Linux的命令行神器
  5. Linux怎么查看正在运行的进程的CPU和内存使用率?
【责任编辑:华轩 TEL:(010)68476606】

点赞 0
大家都在看
猜你喜欢

订阅专栏+更多

这就是5G

这就是5G

5G那些事儿
共15章 | armmay

119人订阅学习

16招轻松掌握PPT技巧

16招轻松掌握PPT技巧

GET职场加薪技能
共16章 | 晒书包

371人订阅学习

20个局域网建设改造案例

20个局域网建设改造案例

网络搭建技巧
共20章 | 捷哥CCIE

764人订阅学习

读 书 +更多

Linux标准教程

本书以Linux Redhat 9.0中文版为基础编写,从易用性和实用性角度出发主要介绍Linux Redhat 9.0中文版的应用知识,通过本书的学习,相信初中...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微

申博娱乐开户登入 申博游戏直营网 菲律宾太阳网a99.com 菲律宾太阳娱乐登入网址 申博sunbet现金直营网 申博咨询端下载直营网
菲律宾申博官网注册 申博现金网登入 申博太阳城亚洲微信支付充值 菲律宾申博官网直营网 申博官网下载中心直营网 申博138娱乐
申博娱乐城直营网 申博电子游戏开户登入 申博代理登录登入 申博代理登录 www.6677shenbo.com 申博娱乐太阳成登入