v0.11.1
psviderski/uncloudv0.11.1Aug 15, 2025by psviderski
AI Summary
Adds private registry authentication support for pulling images from private container registries, using Docker credentials from local and remote configs.
Key Highlights
- Private registry authentication support
- Docker credentials from local config
- Docker credentials from remote machine config
Breaking Changes
- Requires systemd service configuration update (ProtectHome=read-only)
New Features
- Private registry authentication
- Docker credential retrieval from local and remote configs
Full Release Notes
## Private registry support Fixed authentication when pulling images from private container registries. `uc deploy` or `uc run` will try to retrieve the registry credentials from your local Docker config (`~/.docker/config.json`), including the configured [credentials store](https://docs.docker.com/reference/cli/docker/login/#credential-stores). If the credentials are not found locally, the `uncloudd` daemon on the remote machine will try to retrieve the credentials from its own Docker config (`/root/.docker/config.json`). In order to configure the credentials for your private registries, you can: 1. **(Recommended)** Run [`docker login`](https://docs.docker.com/reference/cli/docker/login/) **locally** (where you run `uc`) if you have Docker CLI installed. 2. Run `docker login` on your **remote machines** under **`root` user** or using `sudo docker login` so that the credentials are stored in the root-owned Docker config. ## Upgrade to 0.11.1 ⚠️ **IMPORTANT:** You need to run the following commands on your existing remote machines to allow the daemon to read credentials from the Docker config: ``` sudo sed -i 's/ProtectHome=true/ProtectHome=read-only/' /etc/systemd/system/uncloud.service sudo systemctl daemon-reload sudo systemctl restart uncloud ``` Newly provisioned machines will have the correct configuration automatically. ### Uncloud CLI locally To upgrade the Uncloud CLI (`uc`) locally: ```bash # Homebrew (macOS, Linux) brew upgrade uncloud # Install script (macOS, Linux) curl -fsS https://get.uncloud.run/install.sh | sh ``` ### Machine daemon To upgrade the Uncloud daemon on your machines, run the following commands on each machine: ```bash # AMD64 curl -fsSL -o uncloudd.tar.gz https://github.com/psviderski/uncloud/releases/download/v0.11.1/uncloudd_linux_amd64.tar.gz # ARM64 # curl -fsSL -o uncloudd.tar.gz https://github.com/psviderski/uncloud/releases/download/v0.11.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 uncloud ``` ## Changelog * 12c07812a27dd89ae5f84550f1568102f2f6ee4c chore: add Caddy config to ServiceSpec, load x-caddy to it * 4be8339c5182890352009b5cc00940a613622ee6 chore: generate a minimal Caddyfile with verify handler alongside caddy.json * 9186d31d123f37c2e1b7367e465548bec1b55189 chore: go mod tidy * ec73f9ecd88a4cdd5570bb422b93998174f7c4d9 chore: handle x-caddy: path/to/Caddyfile to read Caddy config in compose from file * 8dd69b46da9a0f0613203668aabab33768534891 chore: refactor docker gRPC server to use docker service for inspecting and listing containers * 4cc1e556dd4a5a1aaeb7f1f8a30ab6db7f542c28 chore: store ServiceContainer (includes service spec) instead of Container in Corrosion store * dd7bc6c982be2a321ce7d14b029341ba2925ab58 chore: trim spaces for x-caddy, diff Caddy configs when comparing service specs * 5d3f1fe225077ebcf609da9023f36849c14ce832 chore: x-caddy extension type in compose * c67127f83f83ade904490e17c0901fc8d64809df feat: Add basic LLM instruction files * 1ce3e62dbbfdd3928f8393783d16b088145a6954 fix: use local and remote Docker credentials to pull image from private registry