This is small patch release that adds WireGuard endpoint management for machines, Compose stop_grace_period support, and several networking fixes.
WireGuard endpoint management
You can now manually specify what WireGuard endpoint to use when adding or initialising a machine instead of relying on auto-detection. This is useful when a machine is behind a NAT or has multiple network interfaces.
uc machine init user@host --wg-endpoint 203.0.113.1
uc machine add user@host --wg-endpoint 203.0.113.2 --wg-endpoint 192.168.1.5You can also update the WireGuard endpoint for an existing machine:
uc machine update my-machine --wg-endpoint 203.0.113.1Compose stop_grace_period support
Control how long to wait before sending SIGKILL to a container during replacements and stops.
services:
app:
image: myapp
stop_grace_period: 30sImprovements
- Tailscale addresses are excluded from auto-detected WireGuard endpoints: see Discord thread
uc logsnow prints a warning and continues instead of failing when some Compose services are not found in the cluster- Improved reliability of the initial cluster store sync by waiting for known missing changes
- Removed the obsolete
uc machine tokencommand
Bug fixes
- Fixed Uncloud DNS resolution for IPv6 machines by creating AAAA records: #257
- Fixed connection formatting when changing connection with
uc ctx conn
Upgrade to 0.17.1
Uncloud CLI locally
To upgrade the Uncloud CLI (uc) locally:
# Homebrew (macOS, Linux)
brew upgrade uncloud
# Install script (macOS, Linux)
curl -fsS https://get.uncloud.run/install.sh | shMachine daemon
To upgrade the Uncloud daemon on your machines, run the following commands on each machine:
# AMD64
curl -fsSL -o uncloudd.tar.gz https://github.com/psviderski/uncloud/releases/download/v0.17.1/uncloudd_linux_amd64.tar.gz
# ARM64
# curl -fsSL -o uncloudd.tar.gz https://github.com/psviderski/uncloud/releases/download/v0.17.1/uncloudd_linux_arm64.tar.gz
tar -xf uncloudd.tar.gz
sudo install uncloudd /usr/local/bin/uncloudd
rm uncloudd uncloudd.tar.gz
sudo systemctl restart uncloudChangelog
- d5687cd chore: combine some e2e tests to reduce the number of ucind clusters hence used system resources
- 4de17cb chore: delete the obsolete 'machine token' command
- e548717 chore: increase wait for test cluster timeout 30s -> 60s for e2e tests on GHA
- 38c7dda chore: rename --endpoint to --wg-endpoint for 'uc machine update' command
- 897f03a chore: skip not found services when streaming logs for Compose services (print warning)
- 2405b15 chore: validate endpoints is not empty in update machine requests
- a67f936 chore: wait for known missing changes during the initial cluster store sync
- 51c7b5b feat: add --wg-endpoint flag to 'uc machine add/init' to specify wireguard endpoint for the machine instead of auto-detecting
- bad0f97 feat: add support for updating WireGuard endpoints for a machine (uc machine update)
- d9934b9 feat: support compose stop_grace_period to change timeout before sending SIGKILL
- 7b306f2 fix: another attempt to fix flaky test container_crashes_on_startup_without_healthcheck
- 2222434 fix: connection formatting when changing connection with 'ctx conn'
- a507b20 fix: create AAAA DNS record for IPv6 machines" (#257)
- 3c43543 fix: flaky test TestDeployment/container_crashes_on_startup_without_healthcheck
- 1f328e9 fix: remove the incorrect e2e test for updating machine endpoints with empty list
- e6f013d fix: skip Tailscale addresses for using as auto-detected WireGuard endpoints
- 51b8c29 fix: typo