如何配置docker以允许从其他计算机连接到容器?
我正在尝试在Linux docker容器中运行一个小型测试服务器,其中MS SQL server在Mac上运行。可能我的术语有误,因此请在必要时纠正我: 主机-安装docker的macOS桌面(ip 10.0.1.73) 容器—在docker容器中运行的Linux实例,其中运行SQL Server 远程桌面-局域网上试图连接到SQL Server的另一台计算机 我按照MS的安装说明进行了操作,除了无法从远程桌面连接到SQL Server之外,一切似乎都正常运行 我可以连接到docker主机(10.0.1.73)并可以ping IP地址 我可以从docker主机连接到SQL Server并查看数据库等 我使用以下命令创建docker容器如何配置docker以允许从其他计算机连接到容器?,docker,Docker,我正在尝试在Linux docker容器中运行一个小型测试服务器,其中MS SQL server在Mac上运行。可能我的术语有误,因此请在必要时纠正我: 主机-安装docker的macOS桌面(ip 10.0.1.73) 容器—在docker容器中运行的Linux实例,其中运行SQL Server 远程桌面-局域网上试图连接到SQL Server的另一台计算机 我按照MS的安装说明进行了操作,除了无法从远程桌面连接到SQL Server之外,一切似乎都正常运行 我可以连接到docker主机(10
sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<XXXXXX>" -p 1433:1433 --name sqlserver1 -d microsoft/mssql-server-linux:2017-latest
sudo docker run-e“ACCEPT_EULA=Y”-e“SA_PASSWORD=“-p 1433:1433--名称sqlserver1-d microsoft/mssql server linux:2017最新版本
认为-p 1433:1433
会将linux端口映射到macOS主机端口,并允许远程计算机在从局域网连接到macOS主机上的端口时访问docker容器
这不起作用,我认为这可能与macOS主机上的网络路由有关
我看到的大多数解决方案似乎都表明应该使用VirtualBox UI来修改网络设置,但我没有安装它
其他人似乎有一页又一页的命令行指令是必需的
在我错过的地方有没有一个简单的解决办法
编辑:
通过进一步的研究,我发现了关于Docker网络默认设置为单主机网络的解释。很好地解释了其他与Docker概念斗争的人
关于docker容器和虚拟机之间的区别也值得一读
仍在尝试查找有关多主机联网的一些说明。尝试取消您要连接的主机上的防火墙的名称
端口1433将转发到docker容器,但您的主机(MAC)应该打开端口1433才能连接到您的主机。尝试取消您要连接的主机上的防火墙 端口1433将转发到docker容器,但您的主机(MAC)应打开端口1433,以便能够连接到主机。使用NAT:
sudo ifconfig en1 alias 10.0.1.74/21 up
sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<XXXXXXXXX>" -p 10.0.1.74:1433:1433 --name sqlserver1 -d microsoft/mssql-server-linux:2017-latest
sudo docker run-e“ACCEPT_EULA=Y”-e“SA_PASSWORD=“-p 10.0.1.74:1433:1433--名称sqlserver1-d microsoft/mssql server linux:2017最新版本
sudo ifconfig en1 alias 10.0.1.74/21 up
sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<XXXXXXXXX>" -p 10.0.1.74:1433:1433 --name sqlserver1 -d microsoft/mssql-server-linux:2017-latest
sudo docker run-e“ACCEPT_EULA=Y”-e“SA_PASSWORD=“-p 10.0.1.74:1433:1433--名称sqlserver1-d microsoft/mssql server linux:2017最新版本
防火墙已关闭。我可以告诉您,我需要设置某种桥接网络。默认情况下,docker容器将不会访问您的LAN。它将只能从您的主机通过172。。。IP(我的头顶)。但是,如果您在端口1433上连接到主机,则应将其转发到容器。无论如何,我认为防火墙已关闭。我可以告诉您,我需要设置某种桥接网络。默认情况下,docker容器将不会访问您的LAN。它将只能从您的主机通过172。。。IP(我的头顶)。但是,如果您在端口1433上连接到主机,则应该将其转发到容器,我认为Docker for Mac或Docker Toolbox?(你的菜单栏上有“鲸鱼”图标吗?你是否运行过
docker机器
命令?)我有鲸鱼图标-我想是Mac的docker。Mac的docker,还是docker Toolbox?(你的菜单栏上有“鲸鱼”图标吗?你是否运行过docker机器
命令?)。