Compare commits

...

8 Commits

Author SHA1 Message Date
Emile Vauge
b029e7eded Merge pull request #84 from vdemeester/ignore-me
Add .dockerignore to lightweight build context
2015-10-30 13:15:34 +01:00
Vincent Demeester
6f3afe8213 Add .dockerignore to lightweight build context
Ignoring vendor/ and dist/

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-30 12:10:13 +01:00
Emile Vauge
b4c019afb6 Merge pull request #85 from vdemeester/make-me-happy
Add a all target than runs default tasks
2015-10-30 12:03:06 +01:00
Vincent Demeester
143ea86ab9 Add a all target than runs default tasks
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-30 09:11:43 +01:00
Vincent Demeester
287d5c59da Merge pull request #82 from vdemeester/pr-78
Carry #78 Pass websocket headers to backend
2015-10-29 22:56:51 +01:00
Jaime Pillora
ae6bda3220 Pass websocket headers to backend 2015-10-29 22:45:41 +01:00
Emile Vauge
0a6be92290 Merge pull request #80 from vdemeester/use-generate-for-dockerversion
Use go generate for dockerversion
2015-10-29 22:37:47 +01:00
Vincent Demeester
b71b5dd0d4 Use go generate for dockerversion
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-29 22:10:59 +01:00
7 changed files with 29 additions and 13 deletions

3
.dockerignore Normal file
View File

@@ -0,0 +1,3 @@
dist/
vendor/
!dist/traefik

View File

@@ -20,6 +20,9 @@ print-%: ; @echo $*=$($*)
default: binary
all: build
$(DOCKER_RUN_TRAEFIK) ./script/make.sh
binary: build
$(DOCKER_RUN_TRAEFIK) ./script/make.sh generate binary

View File

@@ -6,4 +6,7 @@ Copyright
//go:generate rm -vf gen.go
//go:generate go-bindata -o gen.go static/... templates/...
//go:generate mkdir -p vendor/github.com/docker/docker/autogen/dockerversion
//go:generate cp script/dockerversion vendor/github.com/docker/docker/autogen/dockerversion/dockerversion.go
package main

View File

@@ -101,6 +101,9 @@ func (w *WebsocketProxy) ServeHTTP(rw http.ResponseWriter, req *http.Request) {
for _, cookie := range req.Header[http.CanonicalHeaderKey("Cookie")] {
requestHeader.Add("Cookie", cookie)
}
for _, auth := range req.Header[http.CanonicalHeaderKey("Authorization")] {
requestHeader.Add("Authorization", auth)
}
// Pass X-Forwarded-For headers too, code below is a part of
// httputil.ReverseProxy. See http://en.wikipedia.org/wiki/X-Forwarded-For
@@ -124,13 +127,16 @@ func (w *WebsocketProxy) ServeHTTP(rw http.ResponseWriter, req *http.Request) {
requestHeader.Set("X-Forwarded-Proto", "https")
}
//frontend Origin != backend Origin
requestHeader.Del("Origin")
// Connect to the backend URL, also pass the headers we get from the requst
// together with the Forwarded headers we prepared above.
// TODO: support multiplexing on the same backend connection instead of
// opening a new TCP connection time for each request. This should be
// optional:
// http://tools.ietf.org/html/draft-ietf-hybi-websocket-multiplexing-01
connBackend, resp, err := dialer.Dial(backendURL.String(), nil)
connBackend, resp, err := dialer.Dial(backendURL.String(), requestHeader)
if err != nil {
log.Errorf("Websocketproxy: couldn't dial to remote backend url %s, %s, %+v", backendURL.String(), err, resp)
http.Error(rw, "Remote backend unreachable", http.StatusBadGateway)

12
script/dockerversion Normal file
View File

@@ -0,0 +1,12 @@
// AUTOGENERATED FILE; see /go/src/github.com/docker/docker/hack/make/.go-autogen
package dockerversion
var (
GITCOMMIT string = "traefik-import"
VERSION string = "traefik-import"
BUILDTIME string = "traefik-import"
IAMSTATIC string = "traefik-import"
INITSHA1 string = "traefik-import"
INITPATH string = "traefik-import"
)

View File

@@ -5,6 +5,7 @@ set -e
DEFAULT_BUNDLES=(
validate-gofmt
validate-govet
generate
binary
test-unit

View File

@@ -1,12 +0,0 @@
// AUTOGENERATED FILE; see ./hack/make/.go-autogen
package dockerversion
var (
GITCOMMIT string = ""
VERSION string = ""
BUILDTIME string = ""
IAMSTATIC string = "true"
INITSHA1 string = ""
INITPATH string = ""
)