From d189dc884d100a3cd45226a4216465dd991f3cda Mon Sep 17 00:00:00 2001 From: Guillaume Lours Date: Wed, 29 Jun 2022 22:19:09 +0200 Subject: [PATCH] add configuration to use nginx-golang-postgres sample with Docker Dev Environments feature Signed-off-by: Guillaume Lours --- .../.docker/docker-compose.yaml | 35 +++++++++++++++++++ nginx-golang-postgres/README.md | 8 +++++ nginx-golang-postgres/backend/Dockerfile | 22 +++++++++++- nginx-golang-postgres/backend/go.mod | 11 +++--- nginx-golang-postgres/backend/go.sum | 8 +++++ 5 files changed, 78 insertions(+), 6 deletions(-) create mode 100644 nginx-golang-postgres/.docker/docker-compose.yaml create mode 100644 nginx-golang-postgres/backend/go.sum diff --git a/nginx-golang-postgres/.docker/docker-compose.yaml b/nginx-golang-postgres/.docker/docker-compose.yaml new file mode 100644 index 0000000..a122c87 --- /dev/null +++ b/nginx-golang-postgres/.docker/docker-compose.yaml @@ -0,0 +1,35 @@ +services: + backend: + build: + context: backend + target: dev-envs + secrets: + - db-password + depends_on: + - db + volumes: + - /var/run/docker.sock:/var/run/docker.sock + db: + image: postgres + restart: always + secrets: + - db-password + volumes: + - db-data:/var/lib/postgresql/data + environment: + - POSTGRES_DB=example + - POSTGRES_PASSWORD_FILE=/run/secrets/db-password + expose: + - 5432 + + proxy: + build: proxy + ports: + - 80:80 + depends_on: + - backend +volumes: + db-data: +secrets: + db-password: + file: db/password.txt diff --git a/nginx-golang-postgres/README.md b/nginx-golang-postgres/README.md index 4630c76..6fea0a3 100644 --- a/nginx-golang-postgres/README.md +++ b/nginx-golang-postgres/README.md @@ -73,3 +73,11 @@ Stop and remove the containers ``` $ docker compose down ``` + +## Use with Docker Development Environments + +You can use this sample with the Dev Environments feature of Docker Desktop. +To develop directly frontend or the backend services inside containers, you just need to use the https git url of the sample: +`https://github.com/docker/awesome-compose/tree/master/nginx-golang-postgres` + +![page](../dev-envs.png) \ No newline at end of file diff --git a/nginx-golang-postgres/backend/Dockerfile b/nginx-golang-postgres/backend/Dockerfile index 36e9525..462dc69 100755 --- a/nginx-golang-postgres/backend/Dockerfile +++ b/nginx-golang-postgres/backend/Dockerfile @@ -1,9 +1,29 @@ -FROM golang:1.13-alpine AS build +# syntax=docker/dockerfile:1.4 + +FROM --platform=$BUILDPLATFORM golang:1.18 AS build WORKDIR /go/src/github.com/org/repo +COPY go.* . COPY . . +ENV CGO_ENABLED=0 RUN go build -o server . +FROM build as dev-envs + +RUN <