访问泊坞窗集装箱港口(access docker container's port)

2019-09-26 13:42发布

我在我的本地计算机上运行两个网站:

应用答:一个WordPress应用程序在运行的码头工人,并可以访问此: HTTP://本地主机:5000

应用B:在本地Web服务器上运行其他应用程序的http://本地主机:80

问题是,当我试图访问WordPress的控制面板( HTTP://本地主机:5000 /可湿性粉剂管理员 ),浏览器显示未找到错误,并在浏览器地址栏上的网址显示“ HTTP://本地主机/可湿性粉剂管理员/ “(5000端口会自动消失)。

我的猜测是,浏览器正试图从应用B(80端口),而不是应用程序A(5000端口)访问可湿性粉剂管理员。

这是为什么,以及如何强制浏览器使用我的specificed端口?

我测试了Chrome和Firefox的,他们的行为是相同的。

这是我的搬运工,compose.yml:

version: '3'

services:
  service_website:
    build: ./services/website
    volumes:
      - ./services/website/source:/var/www/app
      - ./services/website/config/nginx.site.conf:/etc/nginx/conf.d/default.conf
    ports:
      - 5000:80

  php:
    build: ./services/php-fpm
    volumes:
      - ./services/website/source:/var/www/app
      - ./services/php-fpm/config/php.ini:/usr/local/etc/php/php.ini

我的nginx的配置:

server {
    index index.html index.php;
    listen 80 default_server;
    server_name localhost php-docker.local;
    error_log  /var/log/nginx/error.log;
    access_log /var/log/nginx/access.log;    
    root /var/www/app/public;

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass php:9000;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }    
}
文章来源: access docker container's port