1.在阿里雲esc的ws2016里裝docker只能使用windows container,因為官方也說了主機也是虛擬機所以不能開啟Hyper-v。
2.默認使用nat模式運行network,該模式在hyper-v無法開啟時,容器即使映射了端口,例如:8080:80,還是會導致主機localhost:8080或者127.0.0.1:8080無法訪問。只能使用容器自己的IP訪問。
3.nat模式下,容器重啟會導致IP變化,如果run時希望綁定IP則可以使用 --ip ***.***.***.*** 。IP段可以不和Nat網關的IP段一致。但是注意,如果該Nat的subnet和gateway是空着的話,則不能指定固定IP。為空則通常是由於安裝docker不完整導致(目前看來是)。查看network可以使用如下命令 docker network ls , docker network inspect [network id]
4.微軟官方說明的network.drive有4個模式,默認Nat(適用於開發環境),網上查到生產環境有人推薦使用overlay模式,不過目前我還是使用的是Nat模式。
5.docker exec -it cid powershell 可以進入容器並啟動命令行
碰到的問題:
1.run時如果碰到“C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from daemon: failed to create endpoint apia2 on network nat: hnsCall failed in Win32: The process cannot access the file because it is being used by another process. (0x20)”。通常是主機的該端口被占用,換一個就好。
