Atualmente, estou configurando um servidor UnraidOS e tenho várias imagens do docker na minha máquina. Recentemente, instalei um contêiner docker que pinga os outros com base no IP e relata o status do tempo de atividade. O docker de tempo de atividade é conectado à rede da ponte e pode acessar SOMENTE os outros contêineres do docker na ponte, e nada mais na rede. O que eu precisaria fazer para permitir que meu docker de tempo de atividade alcançasse outros IPs?
Meu servidor unraidOS tem um IP estático de 192.168.1.14
Docker 1: 192.168.1.14:8401 (bridge)
Docker 2: 192.168.1.14:8402 (bridge)
Docker 3: 192.168.1.14:8403 (bridge)
Uptime Docker 4: 192.168.1.14:8400 (bridge)
Docker 5: 192.168.1.15 (custom: br0)
Docker 6: 192.168.1.16 (custom: br0)
Meu "Uptime Docker 4" é capaz de fazer ping e se conectar ao Docker 1, Docker 2 e Docker 3, pois todos estão no horário da rede "ponte". O Docker 5 e o Docker 6 estão ambos na rede "custom: br0" para que tenham seus próprios endereços IP e meu "Uptime Docker 4" não possa se conectar a ele, pois está em uma rede diferente.
Quais seriam minhas soluções para que o Docker 5 e o Docker 6 ainda mantenham seu IP e ainda sejam acessíveis pelo Uptime Docker 4?
Eu tenho outro PC conectado à minha rede com um IP de 192.168.1.103 e "Uptime Docker 4" é capaz de pingar. Ele ainda não pode pingar "Docker 5" e "Docker 6", mesmo que esses IPs sejam atribuídos como o meu PC.
Atualização : Especificamente para usuários do UnraidOS, há uma opção em Configurações> Docker chamada "Acesso de host a redes personalizadas". Se você ativar isso, poderá acessar a máquina host conectada ao br0. Mudei todos os meus contêineres para br0 e atribuí IPs personalizados para minha organização.
NOTA : Se você reiniciar o servidor, o "Acesso de host a redes personalizadas" falhar (mesmo que mostre que está ativado), será necessário interromper o Docker, desativar o "Acesso de host a redes personalizadas" iniciar o docker, parar o docker novamente, habilite "Acesso de host a redes personalizadas" e inicie-o novamente para ativar corretamente as alterações.
A ponte padrão só se conecta a outros contêineres na ponte padrão, isso isola os contêineres e permite uma configuração fácil sem comprometer outros contêineres de "produção", isso ocorre por design. O UnRaid também expõe apenas algumas opções de configuração para contêineres, você provavelmente precisará usar o terminal para resolver.
Basicamente, seus contêineres de "ponte" estão todos em uma sub-rede /16, e é por isso que eles não podem pingar outro IP. Sugiro que leia para se familiarizar o melhor que puder; https://docs.docker.com/network/network-tutorial-standalone/
Corra
docker network inspect bridge
para verificar as configurações.Para alterar isso, você tem algumas opções;
Você pode confirmar/editar as configurações de rede de ponte padrão. Detalhes na parte inferior da visão geral. Se você deseja apenas usar ping, não precisa abrir nenhuma porta. Altere o gateway/dns de acordo com sua rede local. https://docs.docker.com/network/bridge/#configure-the-default-bridge-network
Você pode configurar sua própria rede Docker, com opções de rede muito mais consideráveis. Isso é um pouco mais detalhado, e você precisa editar os contêineres do docker para fazer isso, alterar especificamente o "driver de rede", algo que não tenho certeza se o UnRaid tem opções através da GUI. https://docs.docker.com/network/network-tutorial-standalone/