20.4. 使用 buildah copy 和 buildah config 修改容器


使用 buildah copy 命令在不挂载的情况下将文件复制到容器。然后,您可以使用 buildah config 命令配置容器,以运行默认创建的脚本。

先决条件

流程

  1. 创建一个名为 newecho 的脚本,并使其可执行:

    # cat newecho
    echo "I changed this container"
    # chmod 755 newecho
  2. 创建新的可正常工作的容器:

    # buildah from myecho:latest
    myecho-working-container-2
  3. 将 newecho 脚本复制到容器中的 /usr/local/bin 目录中:

    # buildah copy myecho-working-container-2 newecho /usr/local/bin
  4. 更改配置以使用 newecho 脚本作为新入口点:

    # buildah config --entrypoint "/bin/sh -c /usr/local/bin/newecho" myecho-working-container-2
  5. 可选:运行 myecho-working-container-2 容器,其触发 newecho 脚本执行:

    # buildah run myecho-working-container-2 -- sh -c '/usr/local/bin/newecho'
    I changed this container
  6. myecho-working-container-2 容器提交成名为 mynewecho 的新镜像:

    # buildah commit myecho-working-container-2 containers-storage:mynewecho

验证

  • 列出本地存储中的所有镜像:

    # buildah images
    REPOSITORY                                  TAG      IMAGE ID       CREATED         SIZE
    docker.io/library/mynewecho                 latest   fa2091a7d8b6   8 seconds ago   234 MB

其它资源

  • buildah-copy,buildah-config,buildah-commit,buildah-run man page
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.