我在Mac OSX上使用最新的Docker版本(17 CE),并使用以下教程启动了SQL Server实例:https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-docker
服务器已成功设置,我设法通过SQL命令行实用程序从容器外部连接到它。
下一步是我希望能够通过为实例分配公共IP,从同一本地网络中的另一台PC连接到此实例。
我已经浏览了一些教程,似乎有了docker 10这个功能现在可以实现了,所以我希望这样做是正确的'方式而不是hacky方式(前码头10)。我查看了许多教程,即How to assign static public IP to docker container和Assign static IP to Docker container。
我正在测试使用ubuntu图像来保持这个例子,但它仍然没有用。虽然图像运行,但每当我尝试从同一台计算机上安装分配的IP时,我就没有收到请求超时。同样在Kitematic上,IP和PORTS下唯一的主机是localhost。图像被分配到自定义网络(实例运行时,docker network prune不会修剪我的自定义网络)但我似乎无法从外部发现我的实例。
我正在使用的命令是
$ docker network create --subnet=172.18.0.0/16 mynet123
$ docker run --net mynet123 --ip 172.18.0.22 -it ubuntu bash
$ ping 172.18.0.22
和我的sql server
$ docker network create --driver=bridge --subnet=192.168.0.0/24 --gateway=192.168.0.1 mynet
$ docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=MyPassword123<>' -p 1433:1433 --ip=192.168.0.10 --net=mynet microsoft/mssql-server-linux
$ ping 192.168.0.10
我错过了什么?
任何帮助都将不胜感激。