Core Concepts
Projects, services, and private networking
Group your container apps in one private project network with internal DNS.
Project model
A project is one private network for a full app stack. Your container apps live there together and talk over internal DNS. Each app runs from a container image you push. See Deploy with GitHub Actions. Managed Postgres, MySQL, and Redis are part of the project model and run inside the same private network. See Managed databases.
- Each container app has a Visibility you pick when you create it: Public
gets a managed
*.alawadi.cloudsubdomain with TLS automatically (you never type a domain); Internal stays on internal DNS only, reachable from other apps in the same project. - Use the app's name like
apifor private traffic between apps in the project. - Link a managed database to your app and its connection string is injected as an
environment variable. You read
DATABASE_URL(Postgres or MySQL) orREDIS_URL(Redis) from the environment, and you never handle the password yourself. - Project quotas cover every app in the project.
- Deleting a project deletes its apps and managed add-ons.
# App-to-app over internal DNS: use the app name and its port
http://api:8080
# Linked databases arrive as environment variables, never a hardcoded host
DATABASE_URL # Postgres or MySQL
REDIS_URL # Redis