No description
- TypeScript 100%
Add opt-in rollbackOnUpdate + updateHealthTimeout global args to the compose `update` method. When enabled: capture the running images before pulling, health-gate the new deploy (every targeted service running, and healthy if it defines a healthcheck), and on failure re-tag and redeploy the previous images. Prune now runs only after a healthy deploy so it can't delete the rollback target. Bump compose model + manifest to 2026.05.31.2. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .claude/skills/docker | ||
| .swamp/workflows | ||
| extensions/models | ||
| workflows/setup-docker | ||
| .gitignore | ||
| .swamp.yaml | ||
| CLAUDE.md | ||
| manifest.yaml | ||
| README.md | ||
@keeb/docker
Swamp extension for Docker Engine and Docker Compose lifecycle management over SSH.
Models
docker/engine
Install Docker Engine and manage containers on a remote host.
| Method | Description |
|---|---|
install |
Install Docker Engine on Alpine Linux |
build |
Build a Docker image from a Dockerfile |
run |
Run a container (stops existing container with same name first) |
stop |
Stop and remove a container (idempotent) |
inspect |
Inspect a container |
exec |
Execute a command in a running container |
docker/compose
Manage Docker Compose services on a remote host.
| Method | Description |
|---|---|
start |
Start Compose services |
stop |
Stop Compose services |
update |
Pull images and restart services |
status |
Check service status |
Workflows
| Workflow | Description |
|---|---|
setup-docker |
Install Docker Engine on a running VM |
Dependencies
- @keeb/ssh — SSH helpers (
lib/ssh.ts)
Install
swamp extension pull @keeb/docker
Usage
Install Docker on a fresh Alpine VM, then run a container:
# Install docker + enable the service
swamp model method run my-host install
# Run nginx exposed on 8080
swamp model method run my-host run \
--args containerName=web,imageTag=nginx:alpine,ports='["8080:80"]',restart=unless-stopped
Or manage a compose stack on the same host:
# Pull latest images and restart services in ~/stack
swamp model method run my-stack update
swamp model method run my-stack status
License
MIT — see LICENSE.