gpt4 book ai didi

Docker 教程都绑定(bind)到 80 端口,并且在本地和远程服务器上失败,因为端口 80 已经在使用中

转载 作者:行者123 更新时间:2023-12-02 18:47:44 26 4
gpt4 key购买 nike

试图围绕所有这些 Docker 教程展开思考,但实际上没有任何关于 80 端口是什么的解释。只是,“绑定(bind)到端口 80”。

这是我在运行示例 Dockerfile 后遇到相同错误的第三个 Docker 教程:

Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use



所以,我知道端口 80 基本上是默认端口,这将允许我的应用程序在 example.com 上运行而不是 example.com:80 - 例如。我的 Web 服务器和本地计算机提示此端口正在使用中。当然是,默认情况下它正在使用中。

那么,为什么所有这些 Docker 教程都绑定(bind)到 80 端口?我敢打赌他们做得对,我错过了一些东西......但是,找不到明确的解决方案或描述。

这是我正在做的教程:Digital Ocean 的使用 Docker 安装 WordPress: https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-docker-compose

果然,端口 80 对我来说失败了:
webserver:
depends_on:
- wordpress
image: nginx:1.15.12-alpine
container_name: webserver
restart: unless-stopped
ports:
- "80:80"
volumes:
- wordpress:/var/www/html
- ./nginx-conf:/etc/nginx/conf.d
- certbot-etc:/etc/letsencrypt
networks:
- app-network

将其更改为不会引发错误,但这意味着我们只能解决 http://example.com:90 -
ports:
- "90:80"

我在这里想念什么?为什么所有这些端口 80 的定义在我的 Mac 和远程 Digital Ocean Ubuntu8.1 服务器上都失败了?

最佳答案

你在 80 端口上运行了其他东西吗?你可以试试curl localhost:80lsof -i :80 ;默认情况下,您可能会在其中运行 Apache 或其他需要杀死的东西。

关于Docker 教程都绑定(bind)到 80 端口,并且在本地和远程服务器上失败,因为端口 80 已经在使用中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58104418/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com