piqueld is a control plane for one Docker Engine running a single-node Swarm,
written in Rust. You describe an application in a manifest; piqueld pulls or
builds its images, deploys it, routes HTTPS traffic to it, and keeps it
running. The piqueld daemon is managed through its dashboard, the piquelctl
CLI, or its HTTP API.
- Deployments: prebuilt images or Git builds, environments, releases and promotion, branch previews, and deployment on push.
- Networking: managed HTTPS routes through Caddy, private routes on your tailnet, Cloudflare Tunnel, and DNS records managed through Cloudflare or OVH.
- Operations: secrets, volumes, one-shot jobs, logs, notifications, telemetry export, and a tamper-evident audit trail.
- Access: passkey accounts, scoped API tokens, and per-application permissions.
Registry credentials, arbitrary TCP/UDP ports, and multi-node clusters are not supported yet.
piqueld runs on an x86_64 Linux host with systemd and Docker Engine. Install the daemon and the CLI, and start the daemon as a service, with:
curl -fsSL https://piqueld.dev/install.sh | shInstalling piqueld also covers
NixOS, installing by hand, and building from crates.io. To script the API from Rust, use the
piqueld-client crate.
The documentation has a user guide for running piqueld and deploying to it, and a developer guide for changing it.
See CONTRIBUTING.md, and the code of conduct. Questions and feedback go to contact@piqueld.dev.
Report vulnerabilities privately to security@piqueld.dev; see SECURITY.md.
piqueld is licensed under the Apache License 2.0.