2017-03-10 8 views
0
export CONCOURSE_BIND_PORT=9000 
export CONCOURSE_BIND_IP=5.6.7.8 # dummy internal ip 
export CONCOURSE_EXTERNAL_URL=http://ci.ratpoison.io 

docker run --rm \ 
    --expose ${CONCOURSE_BIND_PORT} \ 
    -v /path/to/concourse/keys/web:/concourse-keys \ 
    --net=lonelyisland \ 
    --ip=${CONCOURSE_BIND_IP} \ 
    concourse/concourse:latest web \ 
     --basic-auth-username=${CONCOURSE_BASIC_AUTH_USERNAME} \ 
     --basic-auth-password=${CONCOURSE_BASIC_AUTH_PASSWORD} \ 
     --bind-ip=${CONCOURSE_BIND_IP} \ 
     --bind-port=${CONCOURSE_BIND_PORT} \ 
     --external-url=${CONCOURSE_EXTERNAL_URL} \ 
     --postgres-data-source=${CONCOURSE_POSTGRES_DATA_SOURCE} 

nginxのプロキシがインフロントとして構成されている:コンコースCI

詳細とコメントが http://engineering.pivotal.io/post/concourse-no-elb/

アクセスから採取した

docker run -p 80:80 -p 443:443 --rm --name proxy --net lonelyisland -v /var/log/proxy:/log -v /path/to/proxy.conf:/etc/nginx/nginx.conf quay.io/ahoi/proxy:latest 

を介して使用される

user nginx nginx; 
worker_processes 4; 
worker_rlimit_nofile 8192; 

events { 
    worker_connections 512; 
} 



http { 

upstream concourse { 
    server 5.6.7.8:9000; 
} 

server { 
    listen 80 http2; 
    listen [::]:80 http2; 
    server_name ci.ratpoison.io; 

    location/{ 
       proxy_pass  http://concourse; 
     proxy_http_version 1.1; 
     proxy_set_header Connection ""; 
       access_log  /log/ci.access.log; 
       error_log  /log/ci.error.log; 
     proxy_set_header Host $host; 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 

     # Fix `websocket: bad handshake` when using `fly intercept` 
     proxy_set_header Upgrade $http_upgrade; 
     proxy_set_header Connection "upgrade"; 

     # Fix appears that your reverse proxy set up is broken" error. 
     proxy_read_timeout 90; 

     proxy_redirect http://concourse http://ci.ratpoison.io; 
     proxy_buffering off; 
    } 
} 

} 

lonelyislandドッカーが作成したネットワークでうまく動作します:私はcurl -vvI ci.ratpoison.ioを実行すると、公開から

curl -vvvI 5.6.7.8:9000 
* Rebuilt URL to: 5.6.7.8:9000/ 
* Trying 5.6.7.8... 
* TCP_NODELAY set 
* Connected to 5.6.7.8 (5.6.7.8) port 9000 (#0) 
> HEAD/HTTP/1.1 
> Host: 5.6.7.8:9000 
> User-Agent: curl/7.52.1 
> Accept: */* 
> 
< HTTP/1.1 200 OK 
HTTP/1.1 200 OK 
< Date: Fri, 10 Mar 2017 10:28:12 GMT 
Date: Fri, 10 Mar 2017 10:28:12 GMT 
< Content-Type: text/html; charset=utf-8 
Content-Type: text/html; charset=utf-8 

< 
* Curl_http_done: called premature == 0 
* Connection #0 to host 5.6.7.8 left intact 
、私が得るすべては次のとおりです。

* Rebuilt URL to: ci.ratpoison.io/ 
* Trying 2a02:2770:3:0:21a:4aff:fe27:e918... 
* Connected to ci.ratpoison.io (2a02:2770:3:0:21a:4aff:fe27:e918) port 80 (#0) 
> HEAD/HTTP/1.1 
> Host: ci.ratpoison.io 
> User-Agent: curl/7.49.0 
> Accept: */* 
> 
* Connection #0 to host ci.ratpoison.io left intact 
����%  

任意のアイデア?

答えて

1
listen 80 http2; 
listen [::]:80 http2; 

は、firfoxカールまたはSSLなしでHTTP/2を使用するhttp2モジュールのいずれかのないユースケースであるように思わ

listen 80; 
listen [::]:80; 

に変更する必要があります。

関連する問題