英语法语西班牙语

Ad


OnWorks 网站图标

docker-build - 云端在线

通过 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器在 OnWorks 免费托管服务提供商中运行 docker-build

这是 docker-build 命令,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器

程序:

您的姓名


docker-build - 从 PATH 的源代码构建一个新图像

概要


搬运工人 建立 [--构建参数[=[]]][--cpu 份额[=0]][--cgroup-父级[=CGROUP-家长]]
[ - 帮帮我[-f|- 文件[=路径/Dockerfile]][--force-rm[- 隔离[=默认]][--无缓存]
[- 拉[-q|- 安静的[- R M[=true]][-t|- 标签[=[]]][-m|- 记忆[=记忆]]
[--内存交换[=极限]][--shm-大小[=SHM-尺寸]][--cpu-周期[=0]][--cpu-配额[=0]]
[--cpuset-cpus[=CPUSET-CPU]][--cpuset-mems[=CPUSET-MEMS]][--ulimit[=[]]] 路径 | 网址 | ——

商品描述


这将从中指定的目录中读取 Dockerfile PATH. 它也发送任何
在当前目录中找到的其他文件和目录到 Docker 守护进程。 这
此目录的内容将由 地址 在 Dockerfile 中找到的命令。

警告,这将根据内容向 Docker 守护进程发送大量数据
当前目录。 构建由 Docker 守护进程运行,而不是由 CLI 运行,所以整个
上下文必须传输到守护进程。 Docker CLI 报告“发送构建上下文
到 Docker 守护进程”,当上下文被发送到守护进程时。

当给出指向 tarball 存档或单个 Dockerfile 的 URL 时,不会发送上下文
从客户端到 Docker 守护进程。 在这种情况下,位于根目录的 Dockerfile
存档和存档的其余部分将用作构建的上下文。 当一个 Git
存储库设置为 网址,存储库在本地克隆,然后作为
上下文。

配置


-f, - 文件=路径/Dockerfile
要使用的 Dockerfile 的路径。 如果路径是相对路径,而您是
从本地目录构建,则路径必须相对于该目录
目录。 如果您是从指向一个的远程 URL 构建
tarball 或 Git 存储库,则路径必须相对于
远程上下文。 在所有情况下,文件都必须在构建上下文中。
默认是 Dockerfile.

--构建参数=变量
a 的名称和值 构建参数.

例如,如果你想传递一个值 HTTP_PROXY, 使用
--build-arg=http_proxy="http://some.proxy.url"

用户在构建时传递这些值。 Docker 使用 构建参数 作为
通过 Dockerfile 运行的命令的环境上下文 指令
或用于其他 Dockerfile 指令中的变量扩展。 这不是故意的
用于传递秘密值。 ⟨/reference/builder/#arg⟩

--force-rm=true|false
始终删除中间容器,即使在构建失败后也是如此。 默认是
false.

- 隔离="默认"
隔离指定容器使用的隔离技术类型。

--无缓存=true|false
构建图像时不要使用缓存。 默认是 false.

- 帮帮我
打印使用说明

- 拉=true|false
始终尝试拉取更新版本的映像。 默认是 false.

-q, - 安静的=true|false
成功时禁止构建输出并打印图像 ID。 默认是 false.

- R M=true|false
成功构建后删除中间容器。 默认是 true.

-t, - 标签=“”
要应用于生成的图像的存储库名称(以及可选的标签)
成功的案例。

-m, - 记忆=记忆
内存限制

--内存交换=极限
等于内存加交换的限制值。 必须与 -m (- 记忆) 旗帜。 这
交换 极限 应该总是大于 -m (- 记忆) 价值。

格式 极限 is [ ]. 单位可以 b (字节), k (千字节), m
(兆字节),或 g (千兆字节)。 如果不指定单位, b 用来。 将限制设置为 -1
启用无限交换。

--shm-大小=SHM-尺寸
尺寸 /开发/shm. 格式是 . 必须大于 0.
单位是可选的,可以是 b (字节), k (千字节), m (兆字节),或 g (千兆字节)。
如果省略单位,系统将使用字节。
如果完全省略大小,系统将使用 64 m.

--cpu 份额=0
CPU 份额(相对权重)。

默认情况下,所有容器获得相同比例的 CPU 周期。
CPU 份额是一个“相对权重”,相对于默认设置 1024。
此默认值在此处定义:

/sys/fs/cgroup/cpu/cpu.shares
1024

你可以通过调整容器的 CPU 份额来改变这个比例
权重相对于所有其他正在运行的容器的权重。

要修改默认值 1024 的比例,请使用 --cpu 份额
标志将权重设置为 2 或更高。

容器 CPU 份额标志
{C0} CPU 的 60% --cpu-shares=614(614 是 60 的 1024%)
{C1} CPU 的 40% --cpu-shares=410(410 是 40 的 1024%)

该比例仅在 CPU 密集型进程正在运行时应用。
当一个容器中的任务空闲时,其他容器可以使用
剩余的 CPU 时间。 实际使用的 CPU 时间取决于
系统上运行的容器数量。

例如,考虑三个容器,其中一个有 --cpu-shares=1024
另外两个有 --cpu-shares=512. 当在所有三个过程中
容器尝试使用 100% 的 CPU,第一个容器将收到
占总 CPU 时间的 50%。 如果您添加第四个容器 --cpu-shares=1024,
第一个容器只获得 33% 的 CPU。 剩余的容器
获得 16.5%、16.5% 和 33% 的 CPU。

Container CPU share Flag CPU 时间
{C0} 100% --cpu-shares=1024 33%
{C1} 50% --cpu-shares=512 16.5%
{C2} 50% --cpu-shares=512 16.5%
{C4} 100% --cpu-shares=1024 33%

在多核系统上,CPU 时间的份额分布在 CPU 上
核心。 即使容器被限制在少于 100% 的 CPU 时间,它也可以
100% 使用每个单独的 CPU 内核。

例如,考虑具有三个以上内核的系统。 如果你开始一个
容器 {C0} --cpu-shares=512 运行一个进程和另一个容器
{C1} --cpu-shares=1024 运行两个进程,这可能导致以下结果
CPU份额划分:

PID 容器 CPU CPU 份额
100 {C0} 0 100% 的 CPU0
101 {C1} 1 100% 的 CPU1
102 {C1} 2 100% 的 CPU2

--cpu-周期=0
限制 CPU CFS(完全公平调度程序)周期。

限制容器的 CPU 使用率。 这个标志会导致内核限制
容器的 CPU 使用率到您指定的时间段。

--cpu-配额=0
限制 CPU CFS(完全公平调度程序)配额。

默认情况下,容器以完整的 CPU 资源运行。 这个标志使内核
将容器的 CPU 使用率限制为您指定的配额。

--cpuset-cpus=CPUSET-CPU
允许执行的 CPU (0-3, 0,1)。

--cpuset-mems=CPUSET-MEMS
允许执行的内存节点 (MEM) (0-3, 0,1)。 仅对
NUMA 系统。

例如,如果您的系统上有四个内存节点 (0-3),请使用 --cpuset-mems=0,1
确保 Docker 容器中的进程只使用前两个内存中的内存
节点。

--cgroup-父级=CGROUP-家长
路径 小组 容器的 被创建。

如果路径不是绝对路径,则认为该路径相对于 小组 的路径
初始化进程。 如果 Cgroup 尚不存在,则会创建它们。

--ulimit=[]
超限选项

想了解如何 极限 看到
⟨https://docs.docker.com/reference/commandline/run/#setting-ulimits-in-a-container⟩

示例


建筑物 an 图片 运用 a Dockerfile 位于 当前 目录


可以使用 build 命令和 Dockerfile 构建 Docker 镜像:

码头工人建造。

在构建过程中,Docker 创建中间镜像。 为了留住他们,你
必须明确设置 --rm=假.

docker build --rm=false 。

一个好的做法是创建一个具有相关名称的子目录并创建 Dockerfile
在那个目录中。 例如,一个名为 mongo 的目录可能包含一个 Dockerfile
创建一个 Docker MongoDB 镜像。 同样,另一个名为 httpd 的目录可用于
存储 Apache Web 服务器映像的 Dockerfile。

将图像所需的文件添加到子目录中也是一个很好的做法。
这些文件将被指定为 COPY or 地址 中的说明 Dockerfile.

注意:如果你包含一个 tar 文件(一个好的做法),那么 Docker 会自动解压
tar 文件中指定的内容 地址 指令进入指定的
目标。

建筑物 an 图片 命名 图片


一个好的做法是为您正在构建的图像命名。 注意只有a-z0-9-_。
应该用于一致性。 这里没有硬性规定,但最好给出
名称考虑。

-t/- 标签 标志用于重命名图像。 这里有些例子:

虽然这不是一个好习惯,但图像名称可以是任意的:

docker build -t myimage 。

更好的方法是提供完全限定且有意义的存储库、名称和标签
(这里上下文中的标记表示“:”之后的限定符)。 在这个例子中我们
为 Fedora 存储库构建一个 JBoss 映像并为其提供版本 1.0:

docker build -t fedora/jboss:1.0 。

下一个示例针对“whenry”用户存储库,使用 Fedora 和 JBoss 并给出
它是 2.1 版:

docker build -t whenry/fedora-jboss:v2.1 。

如果您不提供版本标记,则 Docker 将分配 最新:

docker build -t whenry/fedora-jboss 。

当您列出图像时,上面的图像将带有标签 最新.

您可以将多个标签应用于图像。 例如,您可以应用 最新 标记为
新建镜像并添加另一个引用特定版本的标签。 例如,到
将图像标记为 whenry/fedora-jboss:最新Whenry/fedora-jboss:v2.1,使用
在以下:

docker build -t whenry/fedora-jboss:latest -t whenry/fedora-jboss:v2.1 。

所以重命名图像是任意的,但应该考虑一个有用的约定
这对消费者有意义,也应该考虑到 Docker 社区
约定。

建筑物 an 图片 运用 a 网址


这将从 URL 克隆指定的 GitHub 存储库并将其用作上下文。 这
存储库根目录下的 Dockerfile 用作 Dockerfile。 这仅适用于
GitHub 存储库是一个专用存储库。

码头工人构建 github.com/scollier/purpletest

注意:您可以通过 转到:// 架构。

建筑物 an 图片 运用 a 网址 a 压缩包 上下文


这会将 URL 本身发送到 Docker 守护程序。 守护进程将获取 tarball
存档,解压缩并将其内容用作构建上下文。 Dockerfile 在
存档的根目录和存档的其余部分将用作构建的上下文。
如果你通过一个 -f 路径/Dockerfile 选项,系统将查找该文件
在 tarball 的内容中。

docker build -f dev/Dockerfile https://10.10.10.1/docker/context.tar.gz

注意:支持的压缩格式有“xz”、“bzip2”、“gzip”和“identity”(没有
压缩)。

指定 隔离 技术 容器 ( - 隔离)


此选项在您在 Windows 上运行 Docker 容器的情况下很有用。
--隔离= option 设置容器的隔离技术。 在 Linux 上,唯一的
支持的是 默认 使用 Linux 命名空间的选项。 在 Microsoft Windows 上,您可以
指定这些值:

· 默认: 使用 Docker 守护进程指定的值 --执行选项 。 如果 守护
未指定隔离技术,Microsoft Windows 使用 过程 作为其默认值
计算值。

· 过程: 仅命名空间隔离。

· 超频:Hyper-V 管理程序基于分区的隔离。

指定 - 隔离 没有值的标志与设置相同
--isolation="默认".

历史


2014 年 XNUMX 月,最初由 William Henry (whenry at redhat dot com) 编译,基于
docker.com 源材料和内部工作。 2014 年 XNUMX 月,由 Sven Dowideit 更新
[电子邮件保护]⟩ 2015 年 XNUMX 月,由 Sally O'Malley 更新 ⟨[电子邮件保护]

使用 onworks.net 服务在线使用 docker-build


免费服务器和工作站

下载 Windows 和 Linux 应用程序

  • 1
    移相器
    移相器
    Phaser 是一个快速、免费且有趣的开放式
    源 HTML5 游戏框架,提供
    WebGL 和 Canvas 渲染
    桌面和移动网络浏览器。 游戏
    可以共...
    下载移相器
  • 2
    附庸引擎
    附庸引擎
    VASSAL 是一个游戏引擎,用于创建
    电子版传统板
    和纸牌游戏。 它提供支持
    游戏块渲染和交互,
    和...
    下载 VASSAL 引擎
  • 3
    OpenPDF - iText 的分支
    OpenPDF - iText 的分支
    OpenPDF 是一个 Java 库,用于创建
    以及使用 LGPL 编辑 PDF 文件和
    MPL 开源许可证。 OpenPDF 是
    iText 的 LGPL/MPL 开源继承者,
    一个...
    下载 OpenPDF - iText 的分支
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - 自动化系统
    地球科学分析 - 是地理
    信息系统 (GIS) 软件
    地理数据的强大功能
    加工和分析...
    下载 SAGA GIS
  • 5
    Java/JTOpen 工具箱
    Java/JTOpen 工具箱
    IBM Toolbox for Java / JTOpen 是一个
    Java类库支持
    客户端/服务器和互联网编程
    模型到运行 OS/400 的系统,
    i5/OS, 哦...
    下载 Java/JTOpen 工具箱
  • 6
    D3.js
    D3.js
    D3.js(或数据驱动文档的 D3)
    是一个 JavaScript 库,它允许你
    生成动态的交互式数据
    Web 浏览器中的可视化。 与D3
    您...
    下载 D3.js
  • 更多 ”

Linux 命令

Ad