Я исследую LXC. Я не смог найти, как предоставить публичный IP-адрес контейнера?
Допустим, у нас есть сервер с 5 IP-адресами. Потом делаем там 4 контейнера и даем как-то по одному адресу для каждого из них.
Я видел, что есть "стандартный" способ для LXD, но ничего не нашел для LXC.
Что я делаю в LXC, так это то, что интерфейс сервера является мостом, поэтому сервер имеет IP1, установленный на мосту, и четыре интерфейса контейнера становятся частью этого моста. Просто настройте сеть вашего контейнера следующим образом:
lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = <your server bridge interface>
lxc.network.name = eth0
Затем вы устанавливаете свой IP-адрес контейнера, как обычно, в контейнере. Вы также можете установить IP в конфигурации lxc, если хотите:
lxc.network.ipv4 = <IP>/24
lxc.network.ipv4.gateway = <gw IP>
Как вы это сделаете, зависит от вас. Существуют также другие типы сетей, поэтому, пожалуйста, прочтите об этом.