clip / docker-compose.yml
Husr's picture
first commit
d988ae4
services:
frontend:
restart: unless-stopped
image: node:18-alpine
working_dir: /app
volumes:
- ./apps/frontend:/app
ports:
# 外部访问 clip.zeabur.app:8080 -> 宿主 8080 -> 容器 3000
- "3000:3000"
environment:
- NEXT_PUBLIC_URL=http://20.63.225.23:3000
- PUBLIC_SOCKET_URL=http://20.63.225.23:3001
# 后端在容器网络里依然通过服务名访问,不用改
- DOCKER_BACKEND_URL=http://backend:3001
- NODE_ENV=production
command: sh -c "npm i -g pnpm && pnpm install && pnpm run build && pnpm start"
depends_on:
- backend
networks:
- app-network
backend:
restart: unless-stopped
image: node:18-alpine
working_dir: /app
volumes:
- ./apps/backend:/app
- ./uploads:/app/uploads # Mount uploads directory for file storage
ports:
- "3001:3001" # This port must be exported and accessed by the frontend for the socket connection
environment:
- REDIS_HOST=sjc1.clusters.zeabur.com
- REDIS_PORT=24122
- REDIS_PASSWORD=DjJd9reClM4T2BiqRoF56IZbNGV07138
- ADMIN_TOKEN=admintoken11451421422
command: sh -c "npm i -g pnpm && pnpm install && pnpm run start"
networks:
- app-network
- storage-network
networks:
app-network:
driver: bridge
storage-network:
driver: bridge