diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..902a7f3 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,62 @@ +services: + server: + image: standardnotes/server + env_file: .env + container_name: server_self_hosted + restart: unless-stopped + ports: + - 3000:3000 + - 3125:3104 + volumes: + - ./logs:/var/lib/server/logs + - ./uploads:/opt/server/packages/files/dist/uploads + networks: + - standardnotes_self_hosted + + localstack: + image: localstack/localstack:3.0 + container_name: localstack_self_hosted + expose: + - 4566 + restart: unless-stopped + environment: + - SERVICES=sns,sqs + - HOSTNAME_EXTERNAL=localstack + - LS_LOG=warn + volumes: + - ./localstack_bootstrap.sh:/etc/localstack/init/ready.d/localstack_bootstrap.sh + networks: + - standardnotes_self_hosted + + db: + image: mysql:8 + container_name: db_self_hosted + env_file: .env + environment: + - MYSQL_DATABASE=${DB_DATABASE} + - MYSQL_USER=${DB_USERNAME} + - MYSQL_ROOT_PASSWORD=${DB_PASSWORD} + - MYSQL_PASSWORD=${DB_PASSWORD} + expose: + - 3306 + restart: unless-stopped + volumes: + - ./data/mysql:/var/lib/mysql + - ./data/import:/docker-entrypoint-initdb.d + networks: + - standardnotes_self_hosted + + cache: + image: redis:6.0-alpine + container_name: cache_self_hosted + volumes: + - ./data/redis/:/data + expose: + - 6379 + restart: unless-stopped + networks: + - standardnotes_self_hosted + + networks: + standardnotes_self_hosted: + name: standardnotes_self_hosted \ No newline at end of file