docker-compose.yml 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. version: '3'
  2. services:
  3. user-db:
  4. image: mysql:8.0.31-debian
  5. hostname: user-db
  6. container_name: user-db
  7. ports:
  8. - 3380:3306
  9. environment:
  10. - MYSQL_ROOT_PASSWORD=123456
  11. - MYSQL_ROOT_HOST=%
  12. - MYSQL_DATABASE=user
  13. # volumes:
  14. # - ./data/mysql/user:/var/lib/mysql
  15. # - ./conf/mysql/conf.d:/etc/mysql/conf.d
  16. cache-redis:
  17. image: redis:6-alpine
  18. hostname: cache-redis
  19. # volumes:
  20. # - ./data/redis/cache/:/data
  21. # - ./conf/redis/cache/redis.conf:/etc/redis/redis.conf
  22. ports:
  23. - 6350:6379
  24. command: ["redis-server","/etc/redis/redis.conf"]
  25. # API服务器
  26. api-server:
  27. build:
  28. context: ../../
  29. dockerfile: deploy/build/Dockerfile
  30. args:
  31. - APP_NAME=app
  32. - APP_RELATIVE_PATH=./cmd/server/main.go
  33. - APP_ENV=prod
  34. image: nunu-api:latest
  35. container_name: nunu-api
  36. environment:
  37. - APP_CONF=config/prod.yml
  38. ports:
  39. - 8000:8000
  40. depends_on:
  41. - user-db
  42. - cache-redis
  43. restart: always
  44. # 任务服务
  45. task-server:
  46. build:
  47. context: ../../
  48. dockerfile: deploy/build/Dockerfile
  49. args:
  50. - APP_NAME=task
  51. - APP_RELATIVE_PATH=./cmd/task/main.go
  52. - APP_ENV=prod
  53. image: nunu-task:latest
  54. container_name: nunu-task
  55. environment:
  56. - APP_CONF=config/prod.yml
  57. depends_on:
  58. - user-db
  59. - cache-redis
  60. restart: always