【问题标题】:Docker Nginx on port 80 with shared hostingDocker Nginx 在端口 80 上与共享主机
【发布时间】:2023-03-26 18:42:01
【问题描述】:

我正在尝试在托管多个网站的机器上部署 nginx/gunicorn/django 堆栈。而且我可以在最终需要的 80 端口以外的任何其他端口上执行此操作,因为 HTTP 守护程序正在使用它。而且我不知道杀死 httpd 进程的后果。在我部署 docker 之前,php 是用 cpanel 在这个网站上运行的。

使用 :80 端口的进程是

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      22466/httpd 
tcp6       0      0 :::80                   :::*                    LISTEN      22466/httpd

有什么建议或想法吗?

编辑: 我用于工作 8000 端口的配置文件,当我将端口更改为 80 时,我遇到了这个问题:

docker-compose.yml

version: '2'
services:
  nginx:
    image: nginx:latest
    container_name: ng01
    ports:
      - "8000:8000"
    volumes:
      - ./src:/src
      - ./config/nginx:/etc/nginx/conf.d
      - /static:/static
      - ./src/media:/media
    depends_on:
      - web
  web:
    build: .
    container_name: dg01
    command: bash -c "python manage.py collectstatic --no-input && python manage.py makemigrations && python manage.py migrate && gunicorn mydjango.wsgi -b 0.0.0.0:8000"
    depends_on:
      - db
    volumes:
      - ./src:/src
      - /static:/static
      - /media:/media
    expose:
      - "8000"

  db:
    image: postgres:latest
    container_name: ps01

nginx 配置

upstream web {
  ip_hash;
  server web:8000;
}

server {
  location /static/ {
      autoindex on;
      alias /static/;
  }

  location /media/ {
      autoindex on;
      alias /media/;
  }

  location / {
      proxy_pass http://web/;
  }
  listen 8000;
  server_name server_domain_here;
}

【问题讨论】:

    标签: docker nginx


    【解决方案1】:

    在 docker 中,您可以将容器内部使用的端口 80 重定向到主机上的另一个端口。

    docker run -d -p 8080:80 <your image>
    

    那么你的主机就不会发生冲突了。

    【讨论】:

    • 在我的 docker-compose.yml 上,我为 nginx 设置了端口“8000:8000”,我应该删除它还是该命令会覆盖它?另外,感谢您的帮助
    • 如果您使用的是 docker-compose,那么您可以在那里更改重定向。你的 docker-compose.yml 是什么样的?
    • 我添加了我的 nginx conf 和 docker-compose 文件。正如我在帖子中提到的,它现在是 8000,并且工作正常。当我将所有 8000 更改为 80 时出现问题,然后它告诉我端口 80 已经分配。另外,当我尝试 80 时,我从 docker compose 中删除了暴露部分,因为它已经暴露了。
    • 嗯,80端口只能使用一次。
    猜你喜欢
    • 2022-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-26
    • 2017-11-19
    相关资源
    最近更新 更多