Infrastructure

The infrastructure layer is the containers the product runs in. The same product runs as a development stack on your machine and as a production stack from its deploy bundle.

Development

product:derive --dev builds and starts the product’s development containers: the web container with your editable features mounted and Flask’s development server, the database, and a stack of their own for each feature that ships a server, such as Redis. Each product gets its own host ports, so two products run side by side.

Production

product:build writes the deploy bundle deploy/ and builds the production image, with every feature installed at its pinned version. product:deploy runs the bundle on this machine. A server needs only Git and Docker.

git clone <the product's repository> && cd <product>/deploy
cp .env.example .env      # then fill in the required values
docker compose up -d

How it relates to the other layers

  • Product. Its docker/ files and pyproject.toml decide the containers and what the image installs.
  • Features. A feature with a server brings its own Compose file, merged into the product’s stack.
  • Framework. It is what runs inside the web container.
  • Delivery. A release publishes the image the bundle runs.

Go deeper


Back to top

splent. Distributed by an LGPL license v3. Contact us: drorganvidez@us.es