Как настроить брандмауэр для работы с Docker?

В сеансе ubuntu вам необходимо активировать новую учетную запись & amp; установите пароль из диалогового окна «Учетные записи пользователей» после создания учетной записи. Выделите нового пользователя>, затем нажмите Account disabled> Set password now, ect.

1
задан 10 April 2017 в 23:34

7 ответов

Это невозможно в ванильном UFW из-за того, что имя интерфейса находится в постоянном состоянии неопределенности. Чтобы установить что-то подобное, необходимо создать определенную вручную сеть. Короче говоря, можно использовать параметры драйвера Docker's bridge в конфигурации компоновки для создания настраиваемой сети. Это будет выглядеть примерно так:

networks:
    my_bridge:
        driver: bridge
        driver_opts:
            com.docker.network.bridge.name: my-bridge

Здесь конфигурация моста может быть добавлена ​​к каждой службе в файле компоновки:

myimage:
    image: myimage:1.0
    ports:
        - "2580:2580"
    networks:
        - my_bridge

Затем, при следующем запуске Compose system, новая сеть будет создана с соответствующим именем:

my-bridge Link encap:Ethernet  HWaddr 11:22:33:44:55:66  
      inet addr:172.18.0.1  Bcast:0.0.0.0  Mask:255.255.0.0
      inet6 addr: fe80::42:1122:3344:5566/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:11 errors:0 dropped:0 overruns:0 frame:0
      TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:788 (788.0 B)  TX bytes:695 (695.0 B)

Оттуда добавление правил UFW для подключения к порту 1234 тривиально:

ufw allow in on my-bridge from any to any port 1234

И внезапно все работает отлично!

3
ответ дан 22 May 2018 в 23:47

Это невозможно в ванильном UFW из-за того, что имя интерфейса находится в постоянном состоянии неопределенности. Чтобы установить что-то подобное, необходимо создать определенную вручную сеть. Короче говоря, можно использовать параметры драйвера Docker's bridge в конфигурации компоновки для создания настраиваемой сети. Это будет выглядеть примерно так:

networks: my_bridge: driver: bridge driver_opts: com.docker.network.bridge.name: my-bridge

Здесь конфигурация моста может быть добавлена ​​к каждой службе в файле компоновки:

myimage: image: myimage:1.0 ports: - "2580:2580" networks: - my_bridge

Затем, при следующем запуске Compose system, новая сеть будет создана с соответствующим именем:

my-bridge Link encap:Ethernet HWaddr 11:22:33:44:55:66 inet addr:172.18.0.1 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::42:1122:3344:5566/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:11 errors:0 dropped:0 overruns:0 frame:0 TX packets:6 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:788 (788.0 B) TX bytes:695 (695.0 B)

Оттуда добавление правил UFW для подключения к порту 1234 тривиально:

ufw allow in on my-bridge from any to any port 1234

И внезапно все работает отлично!

3
ответ дан 18 July 2018 в 15:13

Это невозможно в ванильном UFW из-за того, что имя интерфейса находится в постоянном состоянии неопределенности. Чтобы установить что-то подобное, необходимо создать определенную вручную сеть. Короче говоря, можно использовать параметры драйвера Docker's bridge в конфигурации компоновки для создания настраиваемой сети. Это будет выглядеть примерно так:

networks: my_bridge: driver: bridge driver_opts: com.docker.network.bridge.name: my-bridge

Здесь конфигурация моста может быть добавлена ​​к каждой службе в файле компоновки:

myimage: image: myimage:1.0 ports: - "2580:2580" networks: - my_bridge

Затем, при следующем запуске Compose system, новая сеть будет создана с соответствующим именем:

my-bridge Link encap:Ethernet HWaddr 11:22:33:44:55:66 inet addr:172.18.0.1 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::42:1122:3344:5566/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:11 errors:0 dropped:0 overruns:0 frame:0 TX packets:6 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:788 (788.0 B) TX bytes:695 (695.0 B)

Оттуда добавление правил UFW для подключения к порту 1234 тривиально:

ufw allow in on my-bridge from any to any port 1234

И внезапно все работает отлично!

3
ответ дан 24 July 2018 в 20:35

Это невозможно в ванильном UFW из-за того, что имя интерфейса находится в постоянном состоянии неопределенности. Чтобы установить что-то подобное, необходимо создать определенную вручную сеть. Короче говоря, можно использовать параметры драйвера Docker's bridge в конфигурации компоновки для создания настраиваемой сети. Это будет выглядеть примерно так:

networks: my_bridge: driver: bridge driver_opts: com.docker.network.bridge.name: my-bridge

Здесь конфигурация моста может быть добавлена ​​к каждой службе в файле компоновки:

myimage: image: myimage:1.0 ports: - "2580:2580" networks: - my_bridge

Затем, при следующем запуске Compose system, новая сеть будет создана с соответствующим именем:

my-bridge Link encap:Ethernet HWaddr 11:22:33:44:55:66 inet addr:172.18.0.1 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::42:1122:3344:5566/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:11 errors:0 dropped:0 overruns:0 frame:0 TX packets:6 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:788 (788.0 B) TX bytes:695 (695.0 B)

Оттуда добавление правил UFW для подключения к порту 1234 тривиально:

ufw allow in on my-bridge from any to any port 1234

И внезапно все работает отлично!

3
ответ дан 31 July 2018 в 23:37

Чтобы интегрировать принятый ответ, вы также можете использовать команду docker для создания сети за пределами docker-compose:

sudo docker network create -d bridge -o com.docker.network.bridge.name=my-bridge my_bridge

После этого вы можете проверить выдачу сетей

ip link show

Теперь в ваших файлах компоновки вы можете просто перенаправить сеть по умолчанию или определить любую сеть, которую вы хотите переназначить, на уже существующую

version: "3" services: test: image: nginx:alpine ports: - "80:80" networks: default: external: name: my_bridge
1
ответ дан 18 July 2018 в 15:13

Чтобы интегрировать принятый ответ, вы также можете использовать команду docker для создания сети за пределами docker-compose:

sudo docker network create -d bridge -o com.docker.network.bridge.name=my-bridge my_bridge

После этого вы можете проверить выдачу сетей

ip link show

Теперь в ваших файлах компоновки вы можете просто перенаправить сеть по умолчанию или определить любую сеть, которую вы хотите переназначить, на уже существующую

version: "3" services: test: image: nginx:alpine ports: - "80:80" networks: default: external: name: my_bridge
1
ответ дан 24 July 2018 в 20:35

Чтобы интегрировать принятый ответ, вы также можете использовать команду docker для создания сети за пределами docker-compose:

sudo docker network create -d bridge -o com.docker.network.bridge.name=my-bridge my_bridge

После этого вы можете проверить выдачу сетей

ip link show

Теперь в ваших файлах компоновки вы можете просто перенаправить сеть по умолчанию или определить любую сеть, которую вы хотите переназначить, на уже существующую

version: "3" services: test: image: nginx:alpine ports: - "80:80" networks: default: external: name: my_bridge
1
ответ дан 31 July 2018 в 23:37

Другие вопросы по тегам:

Похожие вопросы: