繁体   English   中英

使用 docker 的 Ansible 分子 - 如何指定内存限制

[英]Ansible molecule using docker - how to specify memory limit

我有一个分子测试,它启动 2 个 Docker 容器,用于一次测试 2 个应用程序版本。

dependency:
  name: galaxy
driver:
  name: docker
lint:
  name: yamllint
platforms:
  - name: molecule1
    hostname: molecule1
    image: "geerlingguy/docker-${MOLECULE_DISTRO:-centos7}-ansible:latest"
    command: ${MOLECULE_DOCKER_COMMAND:-""}
    volumes:
      - /sys/fs/cgroup:/sys/fs/cgroup:ro
    privileged: true
    pre_build_image: true
  - name: molecule2
    hostname: molecule2
    image: "geerlingguy/docker-${MOLECULE_DISTRO:-centos7}-ansible:latest"
    command: ${MOLECULE_DOCKER_COMMAND:-""}
    volumes:
      - /sys/fs/cgroup:/sys/fs/cgroup:ro
    privileged: true
    pre_build_image: true
provisioner:
  name: ansible
  inventory:
    host_vars:
      molecule1:
        app_version: "v1"
      molecule2:
        app_version: "v2"
  lint:
    name: ansible-lint
scenario:
  name: default
  converge_sequence:
    - syntax
    - lint
    - create
    - prepare
    - converge
    - idempotence
    - verify
verifier:
  name: goss
  lint:
    name: yamllint

我正在寻找一种方式来指定,如内存-m--memory=描述这里

我知道molecule使用了docker_container模块,它支持内存参数,但不知何故我找不到一种方法来使这个工作在molecule工作。

任何想法如何实现这一点?

PS:我的猜测是,这个参数是尚未实现的分子,如果我的假设是正确的, 是落实。

提前致谢。

++更新++

--memory确实尚未在分子--memory器中实现。

如果有人感兴趣,这里是对源代码的相关更改:

diff --git a/molecule/provisioner/ansible/playbooks/docker/create.yml b/molecule/provisioner/ansible/playbooks/docker/create.yml
index 7a04b851..023a720a 100644
--- a/molecule/provisioner/ansible/playbooks/docker/create.yml
+++ b/molecule/provisioner/ansible/playbooks/docker/create.yml
@@ -121,6 +121,8 @@
         hostname: "{{ item.hostname | default(item.name) }}"
         image: "{{ item.pre_build_image | default(false) | ternary('', 'molecule_local/') }}{{ item.image }}"
         pull: "{{ item.pull | default(omit) }}"
+        kernel_memory: "{{ item.kernel_memory | default(omit) }}"
+        memory: "{{ item.memory | default(omit) }}"
         state: started
         recreate: false
         log_driver: json-file

我的 fork 现在已经合并到 Molecule。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM