services:
serv:
image: alpine/socat:latest
environment:
- SECRET_ENV
, в редакторе портейнер позволяет добавить произвольную переменную — добавляю SECRET_ENV=foo. Вопрос, как её потом поменять? Пока всё что нашёл — это возможность редактировать переменные у уже запущенных контейнеров через edit/duplicate:
- деплою стек, создаётся контейнер, смотрю в контейнер: SECRET_ENV=foo
- стопаю контейнер, делаю edit/duplicate, меняю SECRET_ENV=bar, запускаю контейнер, смотрю в контейнер: действительно SECRET_ENV=bar
- но если я теперь удалю контейнер / стопну стек, то при следующем деплое в новом контейнере снова будет SECRET_ENV=foo ((
пока что нашёл несколько заметок вида https://forums.portainer.io/t/edit-environment-variables-after-creating-a-stack/501, что если подключить машину в портейнер как сварм, то редактирование переменных в стеке чудесным образом появляется — но это как-то из пушки по воробьям. Нам негде сварм поднимать, у нас есть только пара-тройка тачек с вполне определёнными задачами. Можно конечно каждую завести как отдельный сварм-из-одной-ноды, но как-то это грибами попахивает...
https://stackoverflow.com/questions/27812548/how-to-set-an-environment-variable-in-a-running-docker-container
Обсуждают сегодня