ArchitectureOverview
The data directory
The files of ferryd are in the data directory, and the containers are in Docker.
All that ferryd knows is in its data directory. The option is --data-dir. The default is ./ferry-data.
The files
| Path | Contents |
|---|---|
ferry.db | SQLite: services, deploys, job runs, datastores, env groups, env vars, settings, the account, sessions, API tokens |
api_token | The server token (mode 0600) |
setup_code | The setup code, only while the server has no account (0600) |
instance_id | The owner id of the Docker name prefix (0600) |
ferryd.lock | Held while ferryd runs |
logs/deploys/<deploy id>.log | The log of one deploy: one JSON log line per line |
logs/jobs/<job id>.log | The log of one job |
builds/ | Scratch build contexts. Ferry deletes them after each build. |
repos/ | Git mirrors, one per service |
uploads/ | Source archives that ferry up uploaded |
certs/ | The ACME account, the certificates and the keys |
What is in Docker
The state of the containers is in Docker, not in the data directory:
- Images.
- Containers.
- The private network.
- The volumes of the datastores and the disks of the services.