컨테이너가 실행되는 도커 컨테이너 안에 CentOS 호스트 컴퓨터의 IP 주소를 알 수있는 방법이 있습니까? 내가 도킹 컨테이너 1과 컨테이너 2를 실행하는 리눅스 머신 10.10.10.10 IP를 가지고 있다면, 자바 코드에서 IP를 쿼리하고 싶다. Java 코드는 도커 컨테이너 안에 있습니다. 나는 실제로 도커 떼로서이 서비스를 운영하고있다.도커 컨테이너 내의 호스트 컴퓨터의 IP 주소 읽기
답변
Docker는 컨테이너를 호스트에서 격리하려고합니다.
그래서, 이론적으로, 컨테이너가이 IP 주소 FO 인식해서는 안 호스트하지 않는 한 실행 시간에일부 아이디어를 환경 변수에서
가 컨테이너에 "제공" 어느docker run -e "host_IP=10.10.10.10"...
또는
012,351,641을 포함하는 파일에 my_env
host_IP 10.10.10.10
및
docker run --env-file my_env
가 선에게 Dockerfile에
가이 빌드시 환경 변수에 문서
를 참조
에서 사용012 356,
의 DoC
https://docs.docker.com/engine/reference/builder/#env
당신이 공유 할 수은/etc/호스트와
docker run -v /etc/hosts:/etc/hosts ...
감사합니다. 그러나 Dockerfile 내부에서 환경 변수로 IP를 지정하는 것은 docker 이미지를 다시 작성해야 할 때 호스트 컴퓨터의 IP가 변경되면 나쁜 생각입니다. 그렇지 않니? 나는 또한 실행 중에 environ var를 주려고 생각하고 있었지만 호스트 컴퓨터의 IP가 변경되면 새 ip를 얻기 위해 컨테이너를 다시 시작해야합니다. 권리? – curiousengineer
올바른,'-v/etc/hosts :/etc/hosts' 또는 다른 아이디어의 옵션. http://stackoverflow.com/documentation/docker/6481/passing-secret-data-to-a-running-container#t=201705181637267206782도 참조하십시오. – user2915097
호스트를 찾으려면 다음 netstat 명령을 사용할 수 있습니다와 컨테이너 사이의 호스트 용기 안의 IP :
netstat -nr | grep '^0.0.0.0' | awk '{print $2}'
- 1. 도커 컨테이너에 호스트 IP 주소 받기
- 2. 도커 컨테이너 내의 IP 주소를 찾아냅니다.
- 3. 도커 컨테이너 내부에서 외부 호스트 IP 주소를 얻는 방법
- 4. 화면이없는 컴퓨터의 IP 주소
- 5. 가상 컴퓨터의 로컬 호스트 주소
- 6. 컨테이너 내의 도커 소켓에 액세스
- 7. 도커 컨테이너 내부에서 호스트 컴퓨터의 디렉토리에 액세스하는 방법은 무엇입니까?
- 8. 도커 컴퓨터의 특정 IP 또는 이름 설정
- 9. Docker - 호스트 컴퓨터의 기존 컨테이너 파일에 액세스
- 10. 호스트 컴퓨터의 Docker 액세스 컨테이너 로그
- 11. 실제 컴퓨터의 IP 주소 얻기
- 12. 호스트 이름의 IP 주소
- 13. IP 주소가 다른 호스트의 Ping 도커 컨테이너
- 14. 도커 컨테이너 작업시 호스트 IP 주소로 환경 변수를 설정하십시오.
- 15. 호스트 컴퓨터에 도커 컨테이너 IP 추가/etc/host
- 16. docker-compose를 사용하여 도커 컨테이너 내의 호스트 IP에 액세스
- 17. 주소 고정 표시기 컨테이너 때 그물 = "호스트"
- 18. 호스트 이름에서 IP 주소 가져 오기
- 19. 호스트 이름 대 IP 주소
- 20. SFML로 호스트 IP 주소 받기
- 21. 로컬 호스트 받기 IP 주소
- 22. System.Net.Mail는 호스트 이름과 IP 주소
- 23. 브로드 캐스트 호스트 이름 및 IP 주소
- 24. VBScript를 사용하여 내 컴퓨터의 IP 주소 찾기
- 25. Logstash-forwarder 컴퓨터의 IP 주소 얻기
- 26. 가상 컴퓨터의 IP 주소 가져 오기
- 27. java를 사용하여 클라이언트 컴퓨터의 IP 주소 얻기
- 28. 도커 컨테이너 내에서 호스트 하드웨어 작동/제어
- 29. 도커 컨테이너 내에서 호스트 시간 설정
- 30. 호스트 시스템의 도커 컨테이너 경로 변경
대체 방법이있을 수 있으므로이 작업을 수행하려는 _why_에 대한 추가 정보가 중요 할 수 있습니다. IP보다는 약간의 마술). 예를 들어, 일반적으로 Docker 호스트는 * 내부 * IP 172.17.0.1을 가지고 있기 때문에 당신이 무엇이든 할 수 있습니다. 물론 컨테이너 외부에 IP를 게시하는 경우에는 쓸모가 없습니다. – otupman