개인 IP 주소를 노출시키는 OpenVPN 서버가 있는데 도커 스웜 서비스가 해당 주소에 액세스하기를 원합니다.
이상적으로는 VPN이 필요하지 않은 환경에 이미지가 배포 될 것으로 예상되므로 컨테이너에 "내부"OpenVPN 클라이언트가 없습니다.
내가 지금까지 시도한 것
dperson / openvpn-client 이미지를 사용 하여 컨테이너를 VPN에 성공적으로 연결했습니다 .
--net=container:my-vpn-client
플래그를 사용하여 해당 컨테이너를 네트워크로 사용하여 다른 컨테이너를 성공적으로 시작했습니다 .
이제 개인 IP 주소에 액세스 하는 도커 서비스 를 설정하려고하는데 내가 찾은 것은 다음과 같습니다.
- openVPN 클라이언트를 서비스에서 실행할 수 없으므로 실행할 수 없습니다
cap-add: NET_ADMIN
. Docker에는이 문제를 논의하는 공개 문제가 있지만 여전히 열려 있습니다. - 나는 openVPN 클라이언트 컨테이너가 swarm 클러스터를 "옆으로"실행할 수 있다고 생각했지만
network_mode: "container:my-vpn-client"
지원 되지 않으므로 사용할 수 없으며 임의의 컨테이너를 모든 노드에 강제로 배치 할 수 없기 때문에 의미가 없습니다. 그것이 서비스 자체가 아닌 떼. - 나는 연결 가능한 네트워크 (브리지 / 오버레이)를 만들려고 노력했고 OpenVPN 클라이언트 컨테이너를 그 안에 넣고 마술로 그 네트워크의 다른 구성원이 그 파이프를 통과 할 것으로 기대합니다 ... 그리고 실망했습니다.
그래서 나는 여기에, 어떤 생각입니까?
PS 도움이 될 수 있다면, 이는 주로 swarm init> stack deploy> run tests> swarm leave와 같이 swarm 모드에서 단일 docker 시스템에서 서비스를 실행하는 일부 자동 테스트를 설정하는 것입니다. 그래서 "해킹" 이 있다면 관심 이 있을 것입니다.)
ccr
있습니다. 모든 TCP / IP 라우팅과 마찬가지로 "와 마찬가지로traceroute
가장 친한 친구tcpdump
입니다."