Windows 컨테이너를 통해 Windows Server 2016 TP5에서 실행되는 SQL Server 2014 Express를 얻으려고했습니다.호스트 VM의 SQL Server Express 컨테이너에 연결할 수 없습니다.
가이드 라인을 따른 후 here 나는 Sql Server Express로 컨테이너를 시작하고 데이터베이스를 연결할 수 있습니다.
내 전체 docker run
명령 :
docker run -p 1433:1433 -v C:/temp/:C:/temp/ --env sa_password=xxxx --env attach_dbs="[{'dbName': 'Docker', 'dbFiles': ['C:\\temp\\Docker.mdf', 'C:\\temp\\Docker_log.ldf']}]" microsoft/msslq-server-2014-express-windows
그러나, 나는 용기의 SQL Server Express 인스턴스에 호스트 VM (서버 2016)에 SSMS 연결을 시도 할 때 내가 부족 어떤 부분을 알아낼 수 없습니다.
내 docker run
명령에서 SQL Server의 기본 포트 (1433)를 사용하고 있습니다.
도커 버전은 다음과 같습니다 14300.rs1_release_sv.160907-0755
이 netstat -a
1433 컨테이너에서 대기하고되고 있음을 확인하는 실행하지만, 1433에 귀를 기울되고 하지입니다 : 1.12.1, build 23cf638
윈도우 서버 2016 TP5 빌드입니다 호스트 VM 컨테이너가 실행되는 동안 docker ps
실행
는 포트 1433 내가 sa
사용자가 사용하고 VM 호스트에서 SSMS를 통해 용기에 SQL Server 인스턴스에 연결하려면 0.0.0.0:1433->1433/tcp
로 매핑과 함께 암호를 설정되어 있는지 확인 나는 다음과 같은 PowerShell을 검색 한 컨테이너의 내부 IP 주소는 :
docker inspect --format "{{ .NetworkSettings.Networks.nat.IPAddress }}" <containerid>
불행하게도, SSMS 인스턴스를 찾을 수 없습니다 그리고 내가 잘못 뭘하는지 모르겠어요.
당신이 고정 표시기에 대한 IP 주소를 설정하고이 하나와 연결을 시도 할 수 있습니다
리가 : 1 대 : 73 + ... ct --format "{{.NetworkSettings.Networks.nat.IPAddress}}"<8cfa4ea2 ...향후 사용을 위해 예약 + ~ 운영자 '<'. + CategoryInfo : ParserError (:) [] ParentContainsErrorRecordException + FullyQualifiedErrorId : RedirectionNotSupported – daniele3004