1
0
Fork 0
mirror of https://github.com/imjasonh/kontain.me synced 2026-07-17 22:34:45 +00:00

Add GAE app frontend to serve custom domain traffic

This commit is contained in:
Jason Hall 2018-12-05 16:39:28 -05:00
parent 9a27ab6101
commit 6f4e1e1795
3 changed files with 59 additions and 0 deletions

25
fwd/.gcloudignore Normal file
View file

@ -0,0 +1,25 @@
# This file specifies files that are *not* uploaded to Google Cloud Platform
# using gcloud. It follows the same syntax as .gitignore, with the addition of
# "#!include" directives (which insert the entries of the given .gitignore-style
# file at that point).
#
# For more information, run:
# $ gcloud topic gcloudignore
#
.gcloudignore
# If you would like to upload your .git directory, .gitignore file or files
# from your .gitignore file, remove the corresponding line
# below:
.git
.gitignore
# Binaries for programs and plugins
*.exe
*.exe~
*.dll
*.so
*.dylib
# Test binary, build with `go test -c`
*.test
# Output of the go coverage tool, specifically when used with LiteIDE
*.out

32
fwd/app.go Normal file
View file

@ -0,0 +1,32 @@
package main
import (
"fmt"
"io"
"log"
"net/http"
)
const appJunk = "https://app-j33hbo5ywa-uc.a.run.app"
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
req, err := http.NewRequest(r.Method, fmt.Sprintf("%s/%s", appJunk, r.URL.Path), nil)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
resp, err := http.DefaultClient.Do(req)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
for k, v := range resp.Header {
w.Header().Set(k, v[0])
}
w.WriteHeader(resp.StatusCode)
io.Copy(w, resp.Body)
})
log.Fatal(http.ListenAndServe(":8080", nil))
}

2
fwd/app.yaml Normal file
View file

@ -0,0 +1,2 @@
runtime: go111