feat: 完成 Docker Compose 生产/开发编排文件,统一全项目镜像版本
This commit is contained in:
@@ -1,18 +1,33 @@
|
|||||||
# Makefile for backend services
|
# Makefile for backend services
|
||||||
|
|
||||||
.PHONY: build up down logs
|
.PHONY: build up down logs status dev-up dev-down
|
||||||
|
|
||||||
build:
|
build:
|
||||||
docker-compose build
|
docker-compose build
|
||||||
|
|
||||||
|
build-dev:
|
||||||
|
docker-compose -f docker-compose.dev.yml build
|
||||||
|
|
||||||
up:
|
up:
|
||||||
docker-compose up -d
|
docker-compose up -d
|
||||||
|
|
||||||
|
dev-up:
|
||||||
|
docker-compose -f docker-compose.dev.yml up -d
|
||||||
|
|
||||||
down:
|
down:
|
||||||
docker-compose down
|
docker-compose down
|
||||||
|
|
||||||
|
dev-down:
|
||||||
|
docker-compose -f docker-compose.dev.yml down
|
||||||
|
|
||||||
logs:
|
logs:
|
||||||
docker-compose logs -f
|
docker-compose logs -f
|
||||||
|
|
||||||
|
dev-logs:
|
||||||
|
docker-compose -f docker-compose.dev.yml logs -f
|
||||||
|
|
||||||
status:
|
status:
|
||||||
docker-compose ps
|
docker-compose ps
|
||||||
|
|
||||||
|
dev-status:
|
||||||
|
docker-compose -f docker-compose.dev.yml ps
|
||||||
|
|||||||
79
backend/docker-compose.dev.yml
Normal file
79
backend/docker-compose.dev.yml
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
version: '3.8'
|
||||||
|
|
||||||
|
services:
|
||||||
|
nginx:
|
||||||
|
image: nginx:1.25-alpine
|
||||||
|
ports:
|
||||||
|
- "80:80"
|
||||||
|
volumes:
|
||||||
|
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
|
||||||
|
depends_on:
|
||||||
|
- gateway
|
||||||
|
networks:
|
||||||
|
- backend-network
|
||||||
|
|
||||||
|
gateway:
|
||||||
|
build:
|
||||||
|
context: ./gateway
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
ports:
|
||||||
|
- "8080:8080"
|
||||||
|
environment:
|
||||||
|
- GO_ENV=development
|
||||||
|
- REDIS_ADDR=redis:6379
|
||||||
|
volumes:
|
||||||
|
- ./gateway:/app
|
||||||
|
depends_on:
|
||||||
|
- redis
|
||||||
|
networks:
|
||||||
|
- backend-network
|
||||||
|
|
||||||
|
user-svc:
|
||||||
|
build:
|
||||||
|
context: ./services/user-svc
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
ports:
|
||||||
|
- "50051:50051"
|
||||||
|
environment:
|
||||||
|
- GO_ENV=development
|
||||||
|
- POSTGRES_HOST=postgres
|
||||||
|
- POSTGRES_PORT=5432
|
||||||
|
- POSTGRES_USER=admin
|
||||||
|
- POSTGRES_PASSWORD=password
|
||||||
|
- POSTGRES_DB=userdb
|
||||||
|
volumes:
|
||||||
|
- ./services/user-svc:/app
|
||||||
|
depends_on:
|
||||||
|
- postgres
|
||||||
|
networks:
|
||||||
|
- backend-network
|
||||||
|
|
||||||
|
postgres:
|
||||||
|
image: postgres:18.3-alpine3.23
|
||||||
|
ports:
|
||||||
|
- "5432:5432"
|
||||||
|
environment:
|
||||||
|
- POSTGRES_USER=admin
|
||||||
|
- POSTGRES_PASSWORD=password
|
||||||
|
- POSTGRES_DB=userdb
|
||||||
|
volumes:
|
||||||
|
- postgres-data:/var/lib/postgresql/data
|
||||||
|
networks:
|
||||||
|
- backend-network
|
||||||
|
|
||||||
|
redis:
|
||||||
|
image: redis:8.6.2-alpine
|
||||||
|
ports:
|
||||||
|
- "6379:6379"
|
||||||
|
volumes:
|
||||||
|
- redis-data:/data
|
||||||
|
networks:
|
||||||
|
- backend-network
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
postgres-data:
|
||||||
|
redis-data:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
backend-network:
|
||||||
|
driver: bridge
|
||||||
@@ -9,19 +9,67 @@ services:
|
|||||||
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
|
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
|
||||||
depends_on:
|
depends_on:
|
||||||
- gateway
|
- gateway
|
||||||
|
networks:
|
||||||
|
- backend-network
|
||||||
|
|
||||||
gateway:
|
gateway:
|
||||||
build:
|
build:
|
||||||
context: ./gateway
|
context: ./gateway
|
||||||
|
dockerfile: Dockerfile
|
||||||
ports:
|
ports:
|
||||||
- "8080:8080"
|
- "8080:8080"
|
||||||
environment:
|
environment:
|
||||||
- GO_ENV=production
|
- GO_ENV=production
|
||||||
|
- REDIS_ADDR=redis:6379
|
||||||
|
depends_on:
|
||||||
|
- redis
|
||||||
|
networks:
|
||||||
|
- backend-network
|
||||||
|
|
||||||
user-svc:
|
user-svc:
|
||||||
build:
|
build:
|
||||||
context: ./services/user-svc
|
context: ./services/user-svc
|
||||||
|
dockerfile: Dockerfile
|
||||||
ports:
|
ports:
|
||||||
- "50051:50051"
|
- "50051:50051"
|
||||||
environment:
|
environment:
|
||||||
- GO_ENV=production
|
- GO_ENV=production
|
||||||
|
- POSTGRES_HOST=postgres
|
||||||
|
- POSTGRES_PORT=5432
|
||||||
|
- POSTGRES_USER=admin
|
||||||
|
- POSTGRES_PASSWORD=password
|
||||||
|
- POSTGRES_DB=userdb
|
||||||
|
depends_on:
|
||||||
|
- postgres
|
||||||
|
networks:
|
||||||
|
- backend-network
|
||||||
|
|
||||||
|
postgres:
|
||||||
|
image: postgres:18.3-alpine3.23
|
||||||
|
ports:
|
||||||
|
- "5432:5432"
|
||||||
|
environment:
|
||||||
|
- POSTGRES_USER=admin
|
||||||
|
- POSTGRES_PASSWORD=password
|
||||||
|
- POSTGRES_DB=userdb
|
||||||
|
volumes:
|
||||||
|
- postgres-data:/var/lib/postgresql/data
|
||||||
|
networks:
|
||||||
|
- backend-network
|
||||||
|
|
||||||
|
redis:
|
||||||
|
image: redis:8.6.2-alpine
|
||||||
|
ports:
|
||||||
|
- "6379:6379"
|
||||||
|
volumes:
|
||||||
|
- redis-data:/data
|
||||||
|
networks:
|
||||||
|
- backend-network
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
postgres-data:
|
||||||
|
redis-data:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
backend-network:
|
||||||
|
driver: bridge
|
||||||
|
|||||||
Reference in New Issue
Block a user