From 67d82c4308044fb07eacfedbb564a5f78fc0947c Mon Sep 17 00:00:00 2001 From: luorijun Date: Thu, 3 Apr 2025 17:04:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20Dockerfile=20=E4=BB=A5?= =?UTF-8?q?=E5=8F=8A=E6=B5=8B=E8=AF=95=E7=8E=AF=E5=A2=83=E8=84=9A=E6=9C=AC?= =?UTF-8?q?=EF=BC=9Bdocker=20=E8=84=9A=E6=9C=AC=E5=A4=8D=E7=94=A8=E7=8E=AF?= =?UTF-8?q?=E5=A2=83=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 10 ++++++++ pkg/env/env.go | 4 +++- scripts/dev/docker-compose.yaml | 9 ++++---- scripts/prev/docker-compose.yaml | 39 ++++++++++++++++++++++++++++++++ 4 files changed, 57 insertions(+), 5 deletions(-) create mode 100644 Dockerfile create mode 100644 scripts/prev/docker-compose.yaml diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..86b4978 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM ubuntu:20.04 + +WORKDIR /app + +COPY ./bin/platform_linux_amd64 /app/platform +RUN chmod +x /app/platform + +EXPOSE $APP_PORT + +CMD ["/app/proxy"] \ No newline at end of file diff --git a/pkg/env/env.go b/pkg/env/env.go index 2f90951..e733c77 100644 --- a/pkg/env/env.go +++ b/pkg/env/env.go @@ -13,7 +13,7 @@ import ( var ( AppName = "platform" - AppPort = "8080" + AppPort string ) func loadApp() { @@ -25,6 +25,8 @@ func loadApp() { _AppPort := os.Getenv("APP_PORT") if _AppPort != "" { AppPort = _AppPort + } else { + panic("环境变量 APP_PORT 的值不能为空") } } diff --git a/scripts/dev/docker-compose.yaml b/scripts/dev/docker-compose.yaml index 6eef6b0..add8574 100644 --- a/scripts/dev/docker-compose.yaml +++ b/scripts/dev/docker-compose.yaml @@ -1,4 +1,4 @@ -name: server-dev +name: platform-dev services: @@ -6,13 +6,14 @@ services: image: postgres:17 restart: always environment: - POSTGRES_USER: test - POSTGRES_PASSWORD: test - POSTGRES_DB: app + POSTGRES_USER: ${DB_USERNAME} + POSTGRES_PASSWORD: ${DB_PASSWORD} + POSTGRES_DB: ${DB_NAME} ports: - "5432:5432" volumes: - postgres_data:/var/lib/postgresql/data + redis: image: redis:7.4 restart: always diff --git a/scripts/prev/docker-compose.yaml b/scripts/prev/docker-compose.yaml new file mode 100644 index 0000000..cfcba4a --- /dev/null +++ b/scripts/prev/docker-compose.yaml @@ -0,0 +1,39 @@ +name: platform-prev + +services: + + postgres: + image: postgres:17 + restart: always + environment: + POSTGRES_USER: ${DB_USERNAME} + POSTGRES_PASSWORD: ${DB_PASSWORD} + POSTGRES_DB: ${DB_NAME} + ports: + - "5432:5432" + volumes: + - postgres_data:/var/lib/postgresql/data + + redis: + image: redis:7.4 + restart: always + ports: + - "6379:6379" + volumes: + - redis_data:/data + + platform: + build: + context: ../.. + dockerfile: Dockerfile + depends_on: + - postgres + - redis + ports: + - ${APP_PORT} + env_file: + - ../../.env + +volumes: + postgres_data: + redis_data: