```{index} docker, portainer ``` # Управление конфигурацией стека ## Добавление домена отправителя 1. Изменить конфигурацию аналогично имеющимся записям: {menuselection}`Portainer --> Configs --> postfix-core-sender_access_vX.XX` (*сделать клон последнего конфига*). 2. Перейти в настройки сервиса: {menuselection}`postfix-stack_postfix-core --> Configs`. 3. В выпадающем списке добавить сделанный клон конфига: {guilabel}`Add a config`: `/etc/postfix/sender_access`. 4. Указать в {guilabel}`Path in container`: `/etc/postfix/sender_access`. 5. Удалить предыдущий конфиг (кнопка {guilabel}`Remove config`). 6. Применить изменения (кнопка {guilabel}`Apply changes`). ```{importatnt} В случае редеплоя стека из `yml` файла, необходимо указать в секции {guilabel}`configs:` актуальную версию `postfix-core-sender_access_vX.XX`. ``` ## Добавление подписи DKIM 1. Зайти в контейнер сервиса `opendkim` ({guilabel}`Exec console`). 2. Выполнить: ```bash opendkim-genkey -D /etc/opendkim/domainkeys -d example.com -s mail ``` 3. Забрать из `/etc/opendkim/domainkeys` сгенерированный файл ключа `mail.private` и файл для TXT записи `mail.txt`. 4. Добавить сгенерированный ключ `mail.private` в {menuselection}`Portainer --> Secrets --> mail.example.com.private`. 5. Portainer не позволяет выставлять `file mode` для `secret`, поэтому выполняем на `manager` ноде: ```bash docker service update \ --secret-add souce=opendkim_mail.example.com.dkim.private,target=/etc/opendkim/domainkeys/mail.example.com.dkim.private,mode=0400,uid=100,gid=101 \ postfix-stack_opendkim ``` 6. Изменяем `Configs` стека аналогично инструкции по добавлению домена отправителя: `opendkim-signingtable_vX.XX`, `opendkim-keytable_vX.XX`. ```{important} В случае редеплоя стека из `yml` файла необходимо в compose файле указать для секции `configs:` актуальные версии `opendkim-signingtable`, `opendkim-keytable`, а так же для секции `secrets:` добавленные ключи для доменов ```