Bash on Ubuntu Windows에서 docker-machine으로 TLS 연결(Hyper-V 사용)
Windows에서 http 플러그인을 켜면서 docker를 안전하게 이용하고 싶어요.
Windows에서 docker를 사용하려고 해도 클라이언트만 이동합니다.
따라서 docker의 서버는 Bashon Ubuntu on Windows가 아니라 호스트가 작동해야 합니다.
http 소켓을 여는 옵션은 Docker for Windows에 있습니다.
Windows 용 Docker 트레이에서 Settings를 열면
Expose daemon on tcp:localhost:2375 without TLS 그러나 이 기능은 텍스트와 같이 TLS를 사용하지 않고 2375를 기다리기 때문에 안전하지 않다.
어떤 이유(예를 들어 방화벽 규칙의 설정권이 없음) 때문에 현장의 http 플러그인을 공개하고 싶지 않을 수도 있습니다.
Windows 컨테이너의 경우 데몬입니다.json을 편집하면 설정을 변경할 수 있지만 리눅스 컨테이너에 대해 TLS에서 기다리는 기능(대기 포트도 설정할 수 있음)이 정상적으로 작동하지 않습니다.
이것나이것만 봐도 리눅스 컨테이너를 공개할 때 docker-machine을 사용하세요.
따라서 docker-machine을 이용하여 Bashon Ubuntu Windows(BoW)에서 TLS로 http 플러그인에 접근합니다.
전제로 삼다
Bash on Ubuntu Windows(BoW)와 docker-machine, Hyper-V를 사용할 수 있습니다.
BoW에 Docker 고객을 미리 배치합니다.
내 환경에서 Docker for Windows를 넣으면 docker-machine도 들어와서 그걸 이용하고 있어요.
docker-machine에서 사용하는 가상 스위치는 Hyper-V의 관리 컨트롤러나 파워힐로 미리 제작됩니다.
이때 가상 스위치는 외부 네트워크에서 대상 NIC를 선택하고 □ 관리 운영체제에서 선택합니다.아마 내부는 다리 같은 느낌일 거예요.
만들어진 스위치의 이름은 나중에 사용할 테니 기억하세요.
내 환경에서 잘 돌아가지 못하지만 이동하는 사람은 WindowsNAT로 구성될 수 있다고 생각한다.
그리고 방금 만든 스위치를 사용하기 위해 매개 변수에 방금 만든 스위치를 지정하세요.
나는 "bridge"라는 이름으로 만들었기 때문에 아래와 같다.
Hyper-V를 사용하기 위해 driver에서 Hyperv를 테스트 VM으로 설정합니다.
docker-machine create --driver hyperv --hyperv-virtual-switch 作成したHyper-Vのスイッチ名(私の環境だとbridge) 作成するマシン名
지정한 기계 이름을 사용하여 관리자 권한이 시작된 파워셸에서 실행합니다.제작이 완료되면 같은 파워셸에 아래의 지령을 주십시오.
docker-machine env 作成したマシン名
실행하면 bash에 추가해야 할 환경 변수를 표시합니다.며칠 후
이때 주의해야 할 것은 Docker-CERT_PATH는 BoW에/mnt/c/를 더한 다음\에서/로 경로를 변경하십시오.
예: DOCKERCERT_PATH= "/mnt/c/Users/사용자 이름/.docker/machine/machines/testVM/"
BoW에서
docker version
"서버"를 누르면 서버 측의 정보를 표시하는 데 성공합니다.
Reference
이 문제에 관하여(Bash on Ubuntu Windows에서 docker-machine으로 TLS 연결(Hyper-V 사용)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/m_yokoyama/items/6d71e5a50476788eceb6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)