Skip to content

Dockplane 0.2.0-rc.4

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 15 Aug 21:41
· 66 commits to main since this release

Dockplane 0.2.0-rc.4

The fourth candidate for 0.2.0, and a release-correctness candidate: nothing
about managing Docker changed since 0.2.0-rc.3. The control server, the
application, the agent and the Compose compiler are the same code, and this
release exists because of how that code is built and packaged rather than
because of anything it does.

0.2.0-rc.4 corrects release-build reproducibility discovered during the
verification of 0.2.0-rc.3.

Highlights

A release can be rebuilt from its own commit. Building 0.2.0-rc.3 twice
produced two different sets of images, which meant the published artefacts could
not be checked against a build of the source they name. They can be now: the
same commit produces the same images and the same agent packages, on a different
machine and at a different time. What a build records about itself — its
provenance attestation — still describes the build that made it, and the release
manifest records the digest that was actually published.

Images carry the release, and nothing about the machine that built it.
Timestamps inside the layers were left at the minute each build ran. A
checkout's own file times and permissions reached the image through the files
the compilers copy rather than generate — the database migrations, the icons and
fonts — and those are properties of a working copy, not of a commit. An image
built for an architecture other than the building machine's also carried the
emulator's translation cache: an amd64 image built on Apple silicon contained
it.

An agent package declares a size it derives from its own contents. It was
read from the block allocation of the filesystem the package was staged on, so
two builds of byte-identical payloads declared different sizes and were
different files.

A check that cannot run says so. A release gate written against a newer
shell than the one running it printed an error, reported nothing, and exited
successfully. Gates now refuse before reporting anything.

Security

No change from 0.2.0-rc.1. Stacks remain typed capabilities, no Compose file
or command string reaches a managed host, and a stack whose host state is
unclear is still blocked rather than guessed at. See
Security Model,
Agent Security and
Authentication.

Installation

Ubuntu 24.04, Ubuntu 22.04 or Debian 12, with Docker Engine and the Compose
plugin:

VERSION=0.2.0-rc.4

sha256sum -c SHA256SUMS
tar xzf "dockplane-$VERSION.tar.gz"
cd "dockplane-$VERSION"
sudo ./install-control-plane.sh --domain dockplane.example.com

Then sign in and add your first host. See
Installation and
Add a Host.

Upgrading

The installer is the upgrade: download the release, check it, unpack it, run
it. It takes a backup and validates it before anything changes, and stops if
either fails.

Upgrading from 0.2.0-rc.1 or 0.2.0-rc.3 changes no schema. Upgrading from
0.1.0 migrates it, as that release's notes describe. Either way, upgrade the
control plane first and the agents afterwards. See
Upgrading.

Supported platforms

Control plane Ubuntu 24.04, Ubuntu 22.04 or Debian 12, amd64
Managed hosts Debian 12, Ubuntu 24.04 or Ubuntu 22.04 with systemd

Ports: 80 and 443 for browsers, 9443 for agents. The API and PostgreSQL are not
published. See Supported Platforms.

ARM64

experimental — built and inspected, not runtime-tested

Packages, binaries and images are produced for arm64 and inspected, and no
arm64 machine has run them. Use amd64 in production.

This is a release candidate

It is the 0.2.0 feature set as 0.2.0-rc.3 shipped it, built so that the
result can be verified. Deploy it where you can afford to restore a backup.

Known limitations

Unchanged from 0.2.0-rc.1. Read
Known Limitations before deploying. In
short: applying a revision recreates every service, so a stack is briefly down
while it is rebuilt; deleting a stack leaves its networks and its named volumes
behind; a Compose project discovered on a host still cannot be taken over; a
stack secret cannot be read back; backups are not encrypted by Dockplane; and
images are not signed.

License

AGPL-3.0-only. See LICENSE.