docker-compose.ci.yml 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. services:
  2. mock-event-publisher:
  3. image: standardnotes/mock-event-publisher
  4. ports:
  5. - 3124:3000
  6. environment:
  7. LOG_LEVEL: debug
  8. NODE_ENV: production
  9. VERSION: snjs-test
  10. SNS_TOPIC_ARN: arn:aws:sns:us-east-1:000000000000:payments-local-topic
  11. SNS_ENDPOINT: http://localstack:4566
  12. SNS_DISABLE_SSL: true
  13. SNS_SECRET_ACCESS_KEY: x
  14. SNS_ACCESS_KEY_ID: x
  15. SNS_AWS_REGION: us-east-1
  16. NEW_RELIC_ENABLED: false
  17. networks:
  18. - standardnotes_self_hosted
  19. server:
  20. build: .
  21. env_file: .github/ci.env
  22. environment:
  23. DB_TYPE: "${DB_TYPE}"
  24. CACHE_TYPE: "${CACHE_TYPE}"
  25. SECONDARY_DB_ENABLED: "${SECONDARY_DB_ENABLED}"
  26. TRANSITION_MODE_ENABLED: "${TRANSITION_MODE_ENABLED}"
  27. container_name: server-ci
  28. ports:
  29. - 3123:3000
  30. - 3125:3104
  31. volumes:
  32. - ./logs:/var/lib/server/logs
  33. networks:
  34. - standardnotes_self_hosted
  35. localstack:
  36. image: localstack/localstack:1.4
  37. container_name: localstack-ci
  38. expose:
  39. - 4566
  40. restart: unless-stopped
  41. environment:
  42. - SERVICES=sns,sqs
  43. - HOSTNAME_EXTERNAL=localstack
  44. - LS_LOG=warn
  45. volumes:
  46. - ./docker/localstack_bootstrap.sh:/etc/localstack/init/ready.d/localstack_bootstrap.sh
  47. networks:
  48. - standardnotes_self_hosted
  49. db:
  50. image: mysql:8
  51. container_name: db-ci
  52. env_file: .github/ci.env
  53. ports:
  54. - 3306
  55. restart: unless-stopped
  56. command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci
  57. volumes:
  58. - ./data/mysql:/var/lib/mysql
  59. - ./data/import:/docker-entrypoint-initdb.d
  60. networks:
  61. - standardnotes_self_hosted
  62. secondary_db:
  63. image: mongo:5.0
  64. container_name: secondary_db-ci
  65. ports:
  66. - 27017
  67. restart: unless-stopped
  68. volumes:
  69. - ./data/mongo:/data/db
  70. environment:
  71. MONGO_INITDB_ROOT_USERNAME: standardnotes
  72. MONGO_INITDB_ROOT_PASSWORD: standardnotes
  73. MONGO_INITDB_DATABASE: standardnotes
  74. networks:
  75. - standardnotes_self_hosted
  76. cache:
  77. image: redis:6.0-alpine
  78. container_name: cache-ci
  79. volumes:
  80. - ./data/redis/:/data
  81. ports:
  82. - 6379
  83. restart: unless-stopped
  84. networks:
  85. - standardnotes_self_hosted
  86. networks:
  87. standardnotes_self_hosted:
  88. name: standardnotes_self_hosted