Docker 镜像中的应用程序如何将主机名从 localholst 更改为 public

Docker 镜像中的应用程序如何将主机名从 localholst 更改为 public

我刚刚使用了这个 docker 镜像https://github.com/netbox-community/netbox-docker/,但我无法弄清楚如何配置它以在公共主机名/IP 上工作?

我正在阅读文档并试图弄清楚,但我陷入了困境。

我找到nginx.conf并编辑了hostnameURL,但它不起作用。

daemon off;
worker_processes 1;

error_log /dev/stderr info;

events {
    worker_connections 1024;
}

http {
    include              /etc/nginx/mime.types;
    default_type         application/octet-stream;
    sendfile             on;
    tcp_nopush           on;
    keepalive_timeout    65;
    gzip                 on;
    server_tokens        off;
    client_max_body_size 10M;

    server {
        listen 11.22.33.44:8080;
        server_name netbox.domain.tld;

    #    listen      8080;
        access_log  off;

        location /static/ {
            alias /opt/netbox/netbox/static/;
        }

        location / {
            proxy_pass http://netbox:8001;
            proxy_set_header X-Forwarded-Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-Proto $scheme;
            add_header P3P 'CP="ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
        }
    }
}

答案1

不需要更改容器内的任何东西。编辑netbox-docker.override.yml

改变

- 8000:8080

- '0.0.0.0:8000:8080'

这将配置 docker 将端口绑定到所有接口,而不仅仅是环回接口。此设置的文档在此处

然后使用 创建容器docker-compose up

相关内容