diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6ef9b49 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +docker/keycloak/postgres \ No newline at end of file diff --git a/Dockerfile b/app/Dockerfile similarity index 100% rename from Dockerfile rename to app/Dockerfile diff --git a/go.mod b/app/go.mod similarity index 100% rename from go.mod rename to app/go.mod diff --git a/main.go b/app/main.go similarity index 93% rename from main.go rename to app/main.go index 08ca8fe..cfd9294 100644 --- a/main.go +++ b/app/main.go @@ -15,14 +15,17 @@ func init() { fmt.Println("ZPROX started") } func handler1(w http.ResponseWriter, r *http.Request) { - w.Write([]byte("HELLO ZPROX")) + if r.Host == "test.diukman.com" { + w.Write([]byte("H1")) + } } + func main() { router := http.NewServeMux() router.Handle("/", http.HandlerFunc(handler1)) srv := &http.Server{ - Addr: ":80", + Addr: ":8080", Handler: router, } diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..7e4f212 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,55 @@ +services: + account: + build: + context: ./app + target: builder + image: account + expose: + - "8080" + environment: + - ENV=dev + volumes: + - ./app:/go/src/app + # have to use $$ (double-dollar) so docker doesn't try to substitute a variable + command: reflex -r "\.go$$" -s -- sh -c "go run ./" + postgres: + image: postgres:latest + restart: always + environment: + - POSTGRES_USER=keycloak + - POSTGRES_DB=keycloak + - POSTGRES_PASSWORD=keycloak + volumes: + - './docker/keycloak/postgres:/var/lib/postgresql/data' + networks: + postgres: + keycloak: + depends_on: + - postgres + image: quay.io/keycloak/keycloak:latest + restart: unless-stopped + command: start + ports: + - 4000:8080 + networks: + postgres: + environment: + - KC_PROXY_ADDRESS_FORWARDING=true + - KC_HOSTNAME_STRICT=false + - KC_HOSTNAME=keycloak.diukman.com + # - KC_HOSTNAME_URL=10.0.0.2:4000 + # - KC_HOSTNAME_ADMIN_URL=keycloak.diukman.com + # - KC_PROXY=edge + - KC_HTTP_ENABLED=true + - KC_DB=postgres + - KC_DB_USERNAME=keycloak + - KC_DB_PASSWORD=keycloak + - KC_DB_URL_HOST=postgres + - KC_DB_URL_PORT=5432 + - KC_DB_URL_DATABASE=keycloak + - KEYCLOAK_ADMIN=admin + - KEYCLOAK_ADMIN_PASSWORD=admin + labels: + - "quarkus.transaction-manager.enable-recovery=true" +networks: + postgres: diff --git a/docker/keycloak/readme.md b/docker/keycloak/readme.md new file mode 100644 index 0000000..a458633 --- /dev/null +++ b/docker/keycloak/readme.md @@ -0,0 +1 @@ +keycloak docker