Tutorial
Draw and configure a simple Todo app
App source code here: https://gitlab.com/opscanvas-public/todo.
New diagram
Name: todo-app
Cloud: AWS
Managed services: 1x RDS Postgres
Add private service
Drag service onto the canvas. Name it Todo-API.
Draw connection
Draw a line connecting the Todo-API to the Postgres database.
Configure private service
You can use the todo API available in our public ECR registry. To do so, fill out the service configuration form with the following variables:
Listen port:
8000
Is private: false (un-ticked)
Image reference:
registry.dev.opscanvas.io/test/todo-api:1.0.0
Username:
test
Password:
TestOpsCanvas1
It will take a few seconds for the image to be copied over.
Add environment variables
The Todo API is a python app built with FastAPI and asyncpg, it is configured with 6 environment variables:
DB_HOST (Text) ->
rds_postgres:db_host
(select from dropdown)DB_NAME (Text) ->
rds_postgres:db_name
(select from dropdown)DB_PORT(Number) ->
rds_postgres:port
(select from dropdown)DB_USER (Text) ->
rds_postgres:db_username
(select from dropdown)ROOT_PATH (Text) ->
/todo-api
DB_PASSWORD (Secret) ->
rds_postgres:db_password
(select from dropdown)
When OpsCanvas launches your application it creates a Kubernetes cluster and installs your private services into that. It configures load balancers to route traffic to services based on their name.
The ROOT_PATH
variable is used by FastAPI to route requests to the OpenAPI documentation for the service.
Last updated