From Docker Compose
The flow
Section titled “The flow”- Add service → From Compose.
- Paste or upload your
docker-compose.yml. - Pier inspects the file and:
- Injects
pier-netas the default network (replacing anynetwork_mode: bridgeor unnamed network). - Strips host-port bindings (
ports:sections). Traffic reaches containers through Traefik only. - Allocates internal ports for each service that exposes one.
- Injects
- Click Deploy.
Pier runs docker compose up in its own working directory and streams the logs to the UI in real time.
What this means for your Compose file
Section titled “What this means for your Compose file”You write Compose as if for a developer laptop. Pier handles the production wiring:
- No
ports:mappings — remove them or let Pier strip them; everything is onpier-net. - No external networks — Pier will override them. If you truly need a second network, ask on GitHub.
- No volume conflicts — each stack gets prefixed volume names.
Compose stack vs multi-service project
Section titled “Compose stack vs multi-service project”A Compose stack is one service in Pier — you redeploy the whole stack at once. If you want to deploy and scale services independently, create them as separate Pier services and connect them via pier-net DNS names.