Перейти к содержанию

Привязка IP-адресов

Внимание

Изменение привязки (binding) не влияет на исходящий NAT (source NAT). См. раздел SNAT для ознакомления с необходимыми шагами.

Привязка IPv4

Чтобы настроить одну или несколько привязок IPv4, откройте animails.conf и отредактируйте переменные в соответствии с вашими потребностями:

# По техническим причинам привязки http немного отличаются от привязок других служб.
# Вы найдете следующие переменные, разделенные адресом привязки и его портом:
# Пример: HTTP_BIND=1.2.3.4

HTTP_PORT=80
HTTP_BIND=
HTTPS_PORT=443
HTTPS_BIND=

# Другие службы привязываются с использованием следующего формата:
# SMTP_PORT=1.2.3.4:25 привяжет SMTP к IP 1.2.3.4 на порту 25
# Важно! Указание IPv4-адреса приведет к пропуску всех привязок IPv6, начиная с Docker 20.x.
# doveadm, SQL, а также Solr привязаны только к локальным портам; пожалуйста, не меняйте это, если вы не знаете, что делаете.

SMTP_PORT=25
SMTPS_PORT=465
SUBMISSION_PORT=587
IMAP_PORT=143
IMAPS_PORT=993
POP_PORT=110
POPS_PORT=995
SIEVE_PORT=4190
DOVEADM_PORT=127.0.0.1:19991
SQL_PORT=127.0.0.1:13306
SOLR_PORT=127.0.0.1:18983

Чтобы применить изменения, выполните:

docker compose down
docker compose up -d
docker-compose down
docker-compose up -d

Привязка IPv6

Изменение привязок IPv6 отличается от IPv4. Это также обусловлено техническими причинами.

Вместо прямого редактирования файла docker-compose.yml будет использоваться файл docker-compose.override.yml. Это необходимо для сохранения возможности обновления, так как файл docker-compose.yml регулярно обновляется, и ваши изменения, скорее всего, будут перезаписаны.

Создайте файл docker-compose.override.yml со следующим содержимым. Его содержимое будет объединено с основным файлом docker-compose.yml.

В качестве примера указан IPv6 2001:db8:dead:beef::123. Первый суффикс :PORT1 определяет внешний порт, а второй суффикс :PORT2 перенаправляет на соответствующий порт внутри контейнера и не должен изменяться.

services:

    dovecot-animails:
      ports:
        - '[2001:db8:dead:beef::123]:143:143'
        - '[2001:db8:dead:beef::123]:993:993'
        - '[2001:db8:dead:beef::123]:110:110'
        - '[2001:db8:dead:beef::123]:995:995'
        - '[2001:db8:dead:beef::123]:4190:4190'

    postfix-animails:
      ports:
        - '[2001:db8:dead:beef::123]:25:25'
        - '[2001:db8:dead:beef::123]:465:465'
        - '[2001:db8:dead:beef::123]:587:587'

    nginx-animails:
      ports:
        - '[2001:db8:dead:beef::123]:80:80'
        - '[2001:db8:dead:beef::123]:443:443'

Чтобы применить изменения, выполните команды ниже:

docker compose down
docker compose up -d
docker-compose down
docker-compose up -d