Exposes a REST api for managing docker containers.
docker pull fmlabs/kstack-agent:latest
docker run -d \
--name kstack-agent \
--restart always \
--privileged \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/docker/volumes:/var/lib/docker/volumes:ro \
-v kstack_agent_data:/app/data \
-p 5000:5000 \
fmlabs/kstack-agent:latest
If the docker base directory is different from /var/lib/docker
, change the volume mount accordingly.
docker run -d \
--name kstack-agent \
--restart always \
--privileged \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/docker/volumes:/srv/docker/volumes:ro \
-v kstack_agent_data:/app/data \
-p 5000:5000 \
fmlabs/kstack-agent:0.4.0
# Download docker_run.sh from github repository and invoke with bash
curl -s https://raw.githubusercontent.com/fm-labs/kstack-agent/main/docker_run.sh | bash
Uses poetry for dependency management.
poetry install
export AGENT_DATA_DIR=./data
potry run python ./agent.py
The kstack-agent REST api server is served at http://localhost:5000/
by default.
-
Containers
- List containers
- Start container
- Pause container
- Unpause container (Start)
- Stop container
- Restart container
- Remove container
- Inspect container
- View logs
- View logstream (websocket)
- Execute command
- Execute command in interactive shell (websocket)
-
Images
- List images
- Pull image
- Remove image
- Inspect image
-
Networks
- List networks
- Inspect network
-
Volumes
- List volumes
- Inspect volume
-
Compose Stacks
- List compose stacks
- List compose stacks from local filesystem
- List compose stacks from container labels
- List compose stacks from registered repositories
- Inspect compose stack
- Start compose stack (compose up)
- Stop compose stack (compose stop)
- Teardown compose stack (compose down)
- Add compose stack
- Add stack from compose file
- Add stack from github repository
- List compose stacks
-
Secrets
- List secrets
- Inspect secret
- Add secret
-
Swarm
- List nodes
- Inspect node
- Join swarm
- Leave swarm
-
Docker Engine
- Info
- Version
- Disk usage
- Events
- Prune unused resources
-
Low-level docker command invocation
- docker top
- docker ps
- docker run
- docker logs
- docker compose
- docker system prune
-
Low-level docker command invocation via SSH
-
Blueprints
-
Container Blueprints
- List templates from Kstack templates (json files hosted on github)
- List templates from Portainer templates (json files hosted on github)
- Launch container from template
- Launch container from portainer template
-
Compose Blueprints
- List compose templates from Kstack templates (json files hosted on github)
- List user-defined compose templates
- Add compose template
- Compose file upload
- Compose file url
- GitHub repository with compose file
-
Related projects:
- kstack-ui - A web ui for kstack-agent