首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何覆盖molecule[podman]容器的入口点

如何覆盖molecule[podman]容器的入口点
EN

Stack Overflow用户
提问于 2022-04-23 18:36:52
回答 1查看 629关注 0票数 0

molecule可以创建容器或VM来测试不可见角色。

我正在使用运行系统的容器d来实现在多个环境中测试角色

要运行systemd,我使用的是command:选项,但是在一个容器中,由于容器上设置了ENTRYPOINT,所以不能这样做。这是molecule/default/molecule.yml的相关摘录

代码语言:javascript
复制
---
driver:
  name: podman
platforms:
  - name: some_platform
    image: "docker.io/someuser/some_image:version"
    entrypoint: /lib/systemd/systemd    # does not work on molecule[podman]
  - name: some_platform
    image: "docker.io/someuser/some_image:version"
    entrypoint:
      - /lib/systemd/systemd    # does not work on molecule[podman]
  - name: some_platform
    image: "docker.io/someuser/some_image:version"
    # I thought maybe this would work because of
    # https://github.com/containers/podman/issues/4595
    entrypoint: ["/lib/systemd/systemd"]    # does not work on molecule[podman]

有没有办法覆盖molecule.yml和podman驱动程序的入口点?

EN

回答 1

Stack Overflow用户

发布于 2022-07-03 09:03:01

我也有同样的问题,在发射分子聚合之前,我通过手动运行podman容器来解决这个问题。我使用的是"docker.io/geerlingguy/docker-ubuntu2004-ansible",,它工作得很好:D

因此,在您的例子中,首先启动一个名为"some_platform“的podman容器

代码语言:javascript
复制
sudo podman run --name some_platform -d docker.io/someuser/some_image:version

按照以下方式调整您的converge.yml文件:

代码语言:javascript
复制
--
driver:
  name: podman
  platforms:
  - name: some_platform
    image: "docker.io/someuser/some_image:version"
    pre_build_image: true

最后,运行你的分子聚合:

代码语言:javascript
复制
sudo molecule converge
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71982641

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档