设置容器反向代理

时间:2016-07-28 16:19:51

标签: nginx docker

我尝试在包含gitlab的多个容器前面使用nginx设置反向代理。基本上,当试图访问mydomain.com/gitlab时,我想转发到mydomain.com:7777

两台服务器都在自己的容器上运行,并且都已启动并运行。 但是,没有请求转发给gitlab。

这是我的nginx的config.d文件。

 upstream gitlab {
  server                    mydomain.com:7777 fail_timeout=0;
 }

 # let gitlab deal with the redirection
 server {
  listen                    *:80;
  server_name               mydomain.com;
  server_tokens             off;
  root                      /dev/null;

  # Increase this if you want to upload larger attachments
  client_max_body_size      20m;

  # individual nginx logs for this vhost
  access_log                /var/log/nginx/gitlab_access.log;
  error_log                 /var/log/nginx/gitlab_error.log;

  location /gitlab/ {
    proxy_set_header        Host              $host;
    proxy_set_header        X-Real-IP         $remote_addr;

    proxy_pass              http://gitlab;
  }
 }

我尝试用内部docker ips替换domain.com地址,但没有成功。

1 个答案:

答案 0 :(得分:1)

您可以为docker容器使用Automated Nginx反向代理

  

nginx-proxy设置一个运行nginx和docker-gen的容器。   docker-gen为nginx生成反向代理配置并重新加载nginx   当容器启动和停止时。