Tag: 反向代理

Nginx作为HTTPS反向代理的多个子域名?

我的Linux机器上有一个IP地址,并希望以这种forms提供HTTPS网站: https://landing.example.com https://site-01.example.com/index.html https://site-01.example.com/files/index.html https://site-01.example.com/store/index.html https://site-02.example.com/index.html https://site-02.example.com/files/index.html https://site-02.example.com/store/index.html 这些网站中的每一个都是同一主机上的Docker容器,所以我的想法是设置一个Nginx反向代理Docker容器。 有很多关于NginX作为反向代理的howto,但是我想要做的不同于教科书的例子,因为我有HTTPS,多个子域和多个URL。 问题 有谁知道如何处理这种types的设置,或者可以告诉我,我应该search的技术关键词是什么? 在这一点上,我不知道从哪里开始,所以任何帮助将不胜感激。

在Artifactory的docker repos的Nginxconfiguration

我有以下的configuration让nginx在artifactory中设置docker repos upstream artifactory_lb { server backup_artifactory_server:8081 backup; server main_artifactory_server:8081; } log_format upstreamlog '[$time_local] $remote_addr – $remote_user – $server_name to: $upstream_addr: $request upstream_response_time $upstream_response_time msec $msec request_time $request_time'; ssl_certificate /etc/nginx/ssl/myCert.pem ssl_certificate_key /etc/nginx/ssl/myKey ssl_protocols TLSv1.1 TLSv1.2; ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH'; ssl_session_cache shared:SSL:10m; server { listen 80; listen 443 ssl; client_max_body_size 2048M; location / { proxy_set_header Host $host; proxy_pass […]

拒绝连接:Docker容器中的Nginx HTTPS反向代理

我想在Docker容器上设置https反向代理,使用nginx或ubuntu / centos。 在浏览器端,我得到connection refused错误。 另外,我在/var/log/nginx/access.log或/var/log/nginx/error.log下看不到任何东西。 我可以再次在Docker容器上用nginx设置http反向代理。 而且,在正常的ubuntu和centos虚拟机上也使用nginx的https反向代理。 可以理解为什么在Docker容器上使用nginx的https反向代理无法从浏览器连接。 如果有任何额外的信息需要,我可以提供给你。 提前致谢。 作为参考,请检查这个sites-available/default文件。 server { listen 80; server_name localhost; return 301 https://$host$request_uri; } server { listen 443 ssl; server_name localhost; ssl_certificate /etc/nginx/ssl/cert.pem; ssl_certificate_key /etc/nginx/ssl/cert.key; ssl on; ssl_session_cache builtin:1000 shared:SSL:10m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4; ssl_prefer_server_ciphers on; location ~* /rabbitmq/(.*) { rewrite ^\/rabbitmq\/(.*)$ /$1 break; proxy_pass […]

反向代理golang docker容器

我有三个docker集装箱,每个集装箱都有一个用golang实现的HTTP端点。 我通过一个docker-compose.yml文件启动他们三个,比如: version: '2' services: first_service: build: api/firstService second_service: build: api/secondService third_service: build: api/thirdService 每个服务公开的端点是唯一的。 例如:first_service监听/ 1 / api; second_service监听/ 2 / api; third_service监听/ 3 / api 所有这三个容器都在80端口提供服务。 有没有办法让我查询所有的端点使用单个IP地址? 例如: 如果我curl: http://myservice/1/*请求应该去first_service http://myservice/2/*请求应该去second_service等等。 我意识到我可能不得不创build某种反向代理。 但是我无法find如何使用docker-compose进行configuration,并正确地进行端口映射。 我想要一个解决scheme,与docker1.12起,最好。 Docker中的服务发现可能是一个相关的主题。 但我无法得到这个工作,因为我是nginx新手,服务发现等任何帮助吗?

Docker for mac主机名称IP

我正在使用最新版本的Docker for Mac(版本17.05.0-ce-rc1-mac8)。 当我开始一个新的容器,它打开一个伟大的港口,运作良好。 我想在我的主机文件(localhost:35678 – > project.local)别名的IP和端口。 有没有办法做到这一点?

Docker,nginx和一个服务器上的多个站点

我有服务器与Nginx和一个工作的应用程序。 我想添加几个应用程序到这台服务器。 我想为自己吸取一些东西。 负载平衡器和反向代理之间有什么区别? 我应该在哪种情况下使用第一种,在哪种情况下我应该使用第二种? 如果我的网站是静态的,如果不是静态的,我应该使用什么? 此外,在nginx的几个站点的上下文中听到有关容器的信息将是一个很大的优势

Gitlabdockerregistry拉失败EOF

1.介绍 我有Gitlab设置使用docker图像https://github.com/sameersbn/docker-gitlab(sameersbn / docker-gitlab),并希望设置gitlab私人registry。 1.1问题 所有这一切都在使用nginx反向代理负载均衡器之后。 我能够推入registry,但拉有一些问题,我无法解决。 输出告诉我retrying in 5sec后retrying in 5sec然后随着时间的推移而增加,但是在大约一分钟之后,它输出在某些层Download complete 。 当所有图层输出Download complete 。 拉结果然后像Unexpected EOF 。 基础设施是这样的: Proxy load balancer —–> gitlab registry | | Another proxy load balancer —–> Gitlab 2.terminal输出 dockerlogin和推送工作正常。 问题在于拉。 2.1 Docker拉 2.1.1预期的结果 root@server:~# docker pull registry.dalten.com/docker/php5.6-cli/image Using default tag: latest latest: Pulling from docker/php5.6-cli/image 10a267c67f42: Already […]

用不同端口的nginx和docker容器实现反向代理

我有不同的端口上的三个docker容器,并希望实现与每个容器的Nginx反向代理,以便我可以通过传递关键字而不是端口导航到每个容器。 喜欢而不是http://localhost:3000我想通过像http://localhost/app1 我用下面的dockerfile创build了nginx镜像。 FROM nginx:alpine COPY nginx.conf /etc/nginx/nginx.conf COPY index.html usr/share/nginx/html 和我的nginx conf文件看起来像 worker_processes 1; 事件{worker_connections 1024; } http { sendfile on; upstream app1 { server localhost:3000; } upstream app2 { server localhost:3001; } server { listen 3000; location /app1 { proxy_pass http://localhost:3000; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header […]

防止redirect到https和URI hack nginx反向代理

我已经在我的服务器上设置了一个反向代理服务器,在docker中有nginx,从那以后,所有的请求都被redirect到https,尽pipe我没有把所有的位置设置为httpsredirect。 基本上我想要的是能够同时服务https和http与反向代理。 另外,我希望能够dynamicredirect到不同的URI,例如我想设置/ bla2 / foo / bar的所有路由只被redirect到/ bla2之后我试图得到的是每当访问example.com/bla2/foo/bar它应该redirect到example.com/foo/bar没有bla2部分… 它可能在同一个configuration文件? 什么可以导致我的服务器将所有请求redirect到https 这是我的服务器nginx.conf server { listen 443; ssl on; ssl_certificate /etc/ssl/example.com.crt; ssl_certificate_key /etc/ssl/example.com.key; listen 80; server_name example.com; location /bla/bla { proxy_pass http://example.com:3980/foo/bar1; } **location /bla2/**{ # proxy_pass http://example.com:3004; return 301 http://example.com:3004$request_uri; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_redirect off; proxy_http_version […]

如何禁用对docker群中的覆盖networking的外部访问

我正在尝试build立一个拥有以下服务的群组: nginx作为反向代理(主要是为了处理虚拟主机和SSL,虽然这不在nginx.conf中)。 一个golangnetworking应用程序。 rediscaching。 postgresql存储。 这导致一个docker构成文件类似于: version: '3' services: proxy: image: nginx:1.13.5-alpine ports: – "80:80" deploy: placement: constraints: [node.role == manager] depends_on: – api volumes: – ./nginx.conf:/etc/nginx/conf.d/default.conf networks: – webnet api: image: user/webapp:latest deploy: replicas: 4 ports: – "8000:8000" depends_on: – postgres – redis networks: – webnet postgres: image: postgres:9.6.5-alpine ports: – "5432:5432" deploy: placement: […]