Skip to content

Rendering Blueprints

A blueprint is a Python module that can be rendered to Docker Compose files that run an application. We won't get into the details of a blueprint's .py file here, but it simply configures service templates to stand up all of the services that are needed to run the application.

This page will render a Keycloak authentation server as an example. The general workflow is the same for rendering a blueprint other packages.

Step 1: Install Packages

Install the package that provides the blueprint that you want to render.

$ pip install vendorless-keycloak

Step 2: Render the Blueprint

Run the vl core render command to render a blueprint to Docker Compose files. Generally, vendorless packages provide blueprints at vendorless.<package>.blueprints.<app_name> so the command usually has the form:

vl core render -m vendorless.<package>.blueprints.<app_name>

For our keycloak authentication server the command would be:

$ vl core render -m vendorless.keycloak.blueprints.auth_server

Rendering A Blueprint From A Local File

You can render blueprints from a local .py file like so:

$ vl core render ./path/to/blueprint.py

Your current working directory should now have a subdirectory with the rendered Docker Compose files.

./
└── vendorless.keycloak.blueprints.auth_server/
    └── docker-compose.yaml

Step 3: Start The Application

Launch the application using Docker Compose.

$ cd vendorless.keycloak.blueprints.auth_server/
$ docker compose up