Size: a a a

2021 March 02

YZ

Yerzhan Zhiyentayev in Ansible
[IPT] Dmitry Knyazev
это как раз читать не будут
Вот. А должно наоборот. У тебя же IaC
источник

L

Lamobot in Ansible
А не проще item["args"] | join ("\\\n") ?
источник

L

Lamobot in Ansible
Ну или что-то похожее
источник

YZ

Yerzhan Zhiyentayev in Ansible
item.args | default ('')
источник

TG

Timur Gadiev in Ansible
[IPT] Dmitry Knyazev
сервис systemd для docker run, с аргументами
И? Зачем собирать строку с обратными слешами?
источник

[K

[IPT] Dmitry Knyazev in Ansible
Timur Gadiev
И? Зачем собирать строку с обратными слешами?
чтобы читать нормально?
источник

[K

[IPT] Dmitry Knyazev in Ansible
вам целой строкой удобно мотать?
источник

YZ

Yerzhan Zhiyentayev in Ansible
Если этот файл менеджится только ансиблом - читаемым должен быть темплейт. А в каком оно виде отрендерилось - главное чтоб в рабочем
источник

ДС

Дмитрий Стародубцев... in Ansible
Коллеги, добрый день

Пытаюсь подмонтировать разделы в docker контейер в зависимости от group_vars. Код вот такой:
   - name: Create NGINX container
     docker_container:
       name: nginx
       image: nginx:1.19
       state: started
       volumes:
         - /etc/nginx/ssl/:/etc/nginx/ssl/
         - "{{ '/etc/nginx/conf.d/elk_nginx.conf:/etc/nginx/conf.d/elk_nginx.conf' if service_name == 'elk_nginx' else omit }}"
         - "{{ '/etc/nginx/conf.d/teampass.conf:/etc/nginx/conf.d/teampass.conf' if service_name == 'teampass' else omit }}"
         - "{{ '/var/www/teampass/:/var/www/teampass/' if  service_name == 'teampass'  else omit }}"
         - "{{ '/etc/teampass/:/etc/teampass/' if  service_name == 'teampass'  else omit }}"

Всё хорошо при запуске группы teampass, но в других случаях получаю ошибку:
FAILED! => {"changed": false, "msg": "The mount point \"__omit_place_holder__d5037e530acb15a86ec68477f970adb3cb96cba3\" appears twice in the volumes option"}

Я так понимаю что нельзя использовать omit дважды. Подскажите пожалуйста, чем его можно заменить?
источник

[K

[IPT] Dmitry Knyazev in Ansible
Yerzhan Zhiyentayev
Если этот файл менеджится только ансиблом - читаемым должен быть темплейт. А в каком оно виде отрендерилось - главное чтоб в рабочем
читаем должен быть список. а он читаем
источник

[K

[IPT] Dmitry Knyazev in Ansible
Yerzhan Zhiyentayev
Если этот файл менеджится только ансиблом - читаемым должен быть темплейт. А в каком оно виде отрендерилось - главное чтоб в рабочем
docker_services:
 - name: vminsert
   image: victoriametrics/vminsert
   persistent: True
   host_network: True
   args: "{{ vminsert_args }}"
источник

[K

[IPT] Dmitry Knyazev in Ansible
на темплэйт то как раз всё равно
источник

[K

[IPT] Dmitry Knyazev in Ansible
а вот строку километровую отлаживать - то ещё удовольствие
источник

L

Lamobot in Ansible
Дмитрий Стародубцев
Коллеги, добрый день

Пытаюсь подмонтировать разделы в docker контейер в зависимости от group_vars. Код вот такой:
   - name: Create NGINX container
     docker_container:
       name: nginx
       image: nginx:1.19
       state: started
       volumes:
         - /etc/nginx/ssl/:/etc/nginx/ssl/
         - "{{ '/etc/nginx/conf.d/elk_nginx.conf:/etc/nginx/conf.d/elk_nginx.conf' if service_name == 'elk_nginx' else omit }}"
         - "{{ '/etc/nginx/conf.d/teampass.conf:/etc/nginx/conf.d/teampass.conf' if service_name == 'teampass' else omit }}"
         - "{{ '/var/www/teampass/:/var/www/teampass/' if  service_name == 'teampass'  else omit }}"
         - "{{ '/etc/teampass/:/etc/teampass/' if  service_name == 'teampass'  else omit }}"

Всё хорошо при запуске группы teampass, но в других случаях получаю ошибку:
FAILED! => {"changed": false, "msg": "The mount point \"__omit_place_holder__d5037e530acb15a86ec68477f970adb3cb96cba3\" appears twice in the volumes option"}

Я так понимаю что нельзя использовать omit дважды. Подскажите пожалуйста, чем его можно заменить?
omit - это не на элемент списка, а на параметр модуля.
1. Копируйте или темплейт делайте нужным файлам в директорию на хосте, и маунтите только её.
2. Формируйте список вольюмов где-то ещё.
источник

L

Lamobot in Ansible
Не люблю такие сложности, но можно так сделать:
service_volumes:
 "teampass":
   - full list of volumes
 "elk_nginx"
   - full list of volumes
И использовать в модуле:
volumes: '{{ service_volumes[service_name] }}'
источник

ДС

Дмитрий Стародубцев... in Ansible
Lamobot
Не люблю такие сложности, но можно так сделать:
service_volumes:
 "teampass":
   - full list of volumes
 "elk_nginx"
   - full list of volumes
И использовать в модуле:
volumes: '{{ service_volumes[service_name] }}'
Спасибо, попробую так. Это получается по варианту 2?
источник

L

Lamobot in Ansible
Да. Первый вариант не очень подходит, так как вам разные директории приходится прокидывать в виде вольюмов в зависимости от сервиса
источник

ДС

Дмитрий Стародубцев... in Ansible
Да, верно.
источник
2021 March 03

AD

Alex Domoradov in Ansible
а использует кто docker-ce репу на ubuntu/debian?
источник

GG

George Gaál in Ansible
Положим ?
источник