mirror of
https://github.com/LukeMathWalker/zero-to-production.git
synced 2024-11-21 16:21:01 +00:00
57 lines
No EOL
1.9 KiB
YAML
57 lines
No EOL
1.9 KiB
YAML
name: zero2prod
|
|
# See https://www.digitalocean.com/docs/app-platform/#regional-availability for the available options
|
|
# You can get region slugs from https://www.digitalocean.com/docs/platform/availability-matrix/
|
|
# `fra` stands for Frankfurt (Germany - EU)
|
|
region: fra
|
|
services:
|
|
- name: zero2prod
|
|
# Relative to the repository root
|
|
dockerfile_path: Dockerfile
|
|
source_dir: .
|
|
github:
|
|
branch: main
|
|
deploy_on_push: true
|
|
repo: LukeMathWalker/zero-to-production
|
|
# Active probe used by DigitalOcean's to ensure our application is healthy
|
|
health_check:
|
|
# The path to our health check endpoint! It turned out to be useful in the end!
|
|
http_path: /health_check
|
|
# The port the application will be listening on for incoming requests
|
|
# It should match what we specify in our configuration.yaml file!
|
|
http_port: 8000
|
|
# For production workloads we'd go for at least two!
|
|
instance_count: 1
|
|
# Let's keep the bill lean for now...
|
|
instance_size_slug: basic-xxs
|
|
# All incoming requests should be routed to our app
|
|
routes:
|
|
- path: /
|
|
envs:
|
|
- key: APP_APPLICATION__BASE_URL
|
|
scope: RUN_TIME
|
|
value: ${APP_URL}
|
|
- key: APP_DATABASE__USERNAME
|
|
scope: RUN_TIME
|
|
value: ${newsletter.USERNAME}
|
|
- key: APP_DATABASE__PASSWORD
|
|
scope: RUN_TIME
|
|
value: ${newsletter.PASSWORD}
|
|
- key: APP_DATABASE__HOST
|
|
scope: RUN_TIME
|
|
value: ${newsletter.HOSTNAME}
|
|
- key: APP_DATABASE__PORT
|
|
scope: RUN_TIME
|
|
value: ${newsletter.PORT}
|
|
- key: APP_DATABASE__DATABASE_NAME
|
|
scope: RUN_TIME
|
|
value: ${newsletter.DATABASE}
|
|
databases:
|
|
# PG = Postgres
|
|
- engine: PG
|
|
# Database name
|
|
name: newsletter
|
|
# Again, let's keep the bill lean
|
|
num_nodes: 1
|
|
size: db-s-dev-database
|
|
# Postgres version - using the latest here
|
|
version: "14" |