Repository navigation
Cablebag 0.20.0
Stacks, templates and moving them between servers
- A calmer Containers tab. On the left a short list: each container on one line with a dot, and how long it
runs, or what is wrong ("23 restarts", "unhealthy", "stopped"). Projects with more than one container group
their containers under the project's name. Click a container (or walk the list with the arrow keys) for its
details on the right: image, web ports to open, its project and compose file, and buttons that say what they
do (Logs, Shell, Restart, Stop). Needs a look and Stopped show only those. - Stacks of your own. New stack writes a compose file (and an optional
.env) to~/stacks/<name>on the
server, readable only by your login, and starts it. A stack is never overwritten. Remove stack takes its
containers away and keeps its volumes and files; stacks in~/stackswithout containers show under Not
running, where Apply the compose file starts them again. - Templates. Start a new stack from a template: its
{{blanks}}(as in macros) are asked when you use it,
and fields named like a password hide what you type. Save as template works on any project, also one made
in Portainer, and on a container started without Compose (Cablebag writes the compose file for it). Values of
settings that look secret (passwords, tokens, keys) become blanks, so a template never holds them. Templates
travel with Sync. - Ask the assistant about a container: it gets the state, where the container comes from and its last 100
log lines, and the button asks the right question when something is wrong ("Why does it keep restarting?"). - The Portainer button at the top is gone; stacks made in Portainer keep Open in Portainer.
- Move a stack to another server. Check the move first: every folder the stack uses is looked up on the
shared storage (NFS or SMB), so a NAS folder mounted under another name or at another depth on the other
server is found, and on the NAS itself the folder is local. The check also names folders and Docker volumes
that are only on this server, ports already in use there, container names, missing networks, a different
processor, private registries the other server is not logged in to, devices and host networking; images are
pinned to the exact versions running now. Then Move stops it here (never both on the same data at once),
starts it there, waits until it is healthy, and goes back by itself when it is not. Every move is kept in a
list. The other server's Containers tab has to be open. - Docker through sudo with your password, on a server where the login may not use Docker (a NAS): the
password comes from the session's vault login or is asked once per tab.