hetzner.de에 약 16 개의 공용 IPv4 주소가있는 서버가 있습니다. 이 같은Docker가 컨테이너를 실행할 때 호스트에 IP 주소를 자동으로 추가 할 수 있습니까?
지금 내가 실행 해요 용기 : 이것은 처음에이 오류를 얻을 것입니다
sudo docker run -d --name test6 -it -p 5.1.2.3:80:80 sunebeck/apache-php
: 수동으로 호스트의 IP 주소를 추가하여 고정
Error starting userland proxy: listen tcp 5.1.2.3:80: bind: cannot assign requested address.
:
ip addr add 5.1.2.3 dev eth0
그 후 의도 한대로 작동하고 서비스는 5.1.2.3에서 포트 80으로 표시됩니다. 그러나 이것을 수동으로 관리하는 것은 약간 번거로운 일입니다.
Docker가 필요에 따라 호스트에서 IP 주소를 자동으로 추가/제거 할 수 있습니까?
나는 그 일을 생각했지만, 주어진 순간에 다른 호스트가 IP 주소를 사용한다면 실제 서버가 IP 주소를 요구하는 것을 원하지 않습니다. – sune
하지만 물론 래퍼 스크립트를 작성하여 해결할 수 있습니다. 또는 더 큰 설치를 '조정'하기 위해 기존 서비스 중 일부를 사용할 수도 있습니다. – sune
오른쪽; Kubernetes와 같은 오케스트레이션 레이어를 사용하면이를 더 잘 관리하는 데 도움이 될 것이라고 제안하려고했습니다. 나는 당신이 원했던 것과 정확히 똑같은 도구 ([kiwi] (https://github.com/larsks/kiwi)라고 불렀다.)를 작성했지만 결코 튼튼하지 않았으며 현대 버전의 Kubernetes에서는 작동하지 않는다. – larsks