我正在使用新堆栈,上面装有mongo express,并且McAfee已在我的计算机上分配了8081端口,我无法禁用它,
所以我在docker-compose.yml
上将其更改为443,我也尝试了其他方法
mongo-express:
image: mongo-express
ports:
- 443:443
environment:
ME_CONFIG_MONGODB_ADMINUSERNAME: tutu
ME_CONFIG_MONGODB_ADMINPASSWORD: toto
但是当我docker-compose up -d
的mongo express端口未完全设置为443时,我遇到了日志:
mongo-express_1 | Mongo Express server listening at http://0.0.0.0:8081
我在代理后面使用适用于Windows(10)的Docker,并且堆栈在同一网络上的另一台计算机上运行良好,并且也可以在家工作
我尝试重新启动Docker,以--force-recreate,删除容器并重新创建
我也使用了docker inspect ID
,我明白了
"NetworkSettings": {
"Bridge": "",
"SandboxID": "3fa04e921ee43231f30169efecda8356fa90e4d0cfff54c3b2151e649f2397d8",
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"Ports": {
"443/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "443"
}
],
"8081/tcp": null
},
我很确定堆栈未在运行,原因是我找不到解决方法
我也检查了这些主题:
How to run MongoDB and Mongo-express with docker-compose?
port number not change for docker-compose
也许我可以提供更多信息,但我不是Docker专家
答案 0 :(得分:0)
默认情况下,SSL连接使用TCP端口443。 在您的情况下,服务器在端口8081(容器内部)上使用HTTP。
如果您仍然想使用443端口通过HTTP连接,则需要按以下步骤修复docker-compose:
mango-express:
image: mango-express
ports:
- 443:8081
第一个参数是主机设置,第二个参数是容器内部的设置。您还可以指定IP地址,例如127.0.0.1:443:8081
端口映射与network_mode: host