con un clic
docker-operations
Guide for managing and debugging Docklift containers and deployments.
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
Guide for managing and debugging Docklift containers and deployments.
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
| name | Docker Operations |
| description | Guide for managing and debugging Docklift containers and deployments. |
Docklift is a container management platform, so understanding the underlying Docker operations is crucial.
The Docklift platform consists of exactly 5 containers (defined in docker-compose.yml):
| Container | Host port | Purpose |
|---|---|---|
docklift-backend | — (8000 internal) | Express API server |
docklift-frontend | — (3000 internal) | Vite SPA (static nginx) |
docklift-nginx | ${DASHBOARD_BIND:-0.0.0.0}:8080:80 | Dashboard gateway |
docklift-nginx-proxy | 80:80, 443:443 | Public domains for user apps + panel domain |
docklift-certbot | — | Let's Encrypt issuance + 12-hourly renewal loop |
Note: There is NO
docklift-dbcontainer. SQLite is a file (/app/data/docklift.db) inside the backend container.
When you add or rename a core container, update the CORE_CONTAINERS and
LOG_SERVICE_CONTAINERS lists in backend/src/routes/system.ts, the Logs page service list in
frontend/src/pages/Logs.tsx, and uninstall.sh.
docker logs docklift-backend -f --tail 100
docker logs docklift-frontend -f --tail 100
docker logs docklift-nginx -f --tail 100 # dashboard gateway (:8080)
docker logs docklift-nginx-proxy -f --tail 100 # public proxy (:80/:443)
docker logs docklift-certbot -f --tail 100 # certificate issuance/renewal
Navigate to /logs in the dashboard for real-time SSE-streamed logs with timestamps, ANSI/level
colouring, search, follow-mode and download. See the logging_monitoring skill.
User containers are named dl_<slug>_<shortId>_<service> (see backend/src/lib/naming.ts).
# List all user containers
docker ps --filter "name=dl_"
# Or by ownership label
docker ps --filter "label=com.docklift.managed=true"
# View logs for a specific user container
docker logs dl_python-smoke_53b01966_app -f
# Everything Compose knows about one project
docker compose -p dl-python-smoke-53b01966 ps
# Project network
docker network inspect dl-net-53b01966
docker inspect <container>docker logs <container>docker exec -it <container> /bin/shdeployments/.docklift/<projectId>/compose.yml — this, not any
repository compose file, is what actually ran.docklift-nginx-proxy should appear on dl-net-<shortId> after deploy.| Network | Who | Purpose |
|---|---|---|
docklift_network | Core DockLift services only | Control plane |
dl-net-<shortId> | One project's containers + edge proxy | App isolation |
docker network inspect docklift_network
docker network ls --filter label=com.docklift.managed=true
Do not put user apps back on docklift_network by default. Do not bind apps to 127.0.0.1
as a substitute for isolation without redesigning proxy routing.
Bind mounts used by the backend:
| Host Path | Container Path | Purpose |
|---|---|---|
./data | /app/data | SQLite DB + uploads |
./deployments | /deployments | Project source + generated runtime state |
./nginx-proxy/conf.d | /nginx-conf | Generated vhosts |
./nginx-proxy/certbot/conf | /etc/letsencrypt | Certificates |
./backups | /data/backups | Backups |
Named volumes for project data are created per configured mount as dl-<shortId>-<slug> and
labelled com.docklift.project=<projectId>:
docker volume ls --filter label=com.docklift.project
docker volume ls --filter label=com.docklift.project=<projectId>
These are external volumes from Compose's point of view, so docker compose down will not
delete them. They are removed when the project is deleted.
# Host-wide and indiscriminate — NEVER from DockLift product paths
docker system prune -a
Product paths must not auto-prune Docker images (shared-host safe).
POST /api/system/purge and post-deploy cleanup are no-ops for image deletion.
For full removal use uninstall.sh, which targets DockLift-owned resources
(com.docklift.* labels / dl-net-* / core names). Prefer labeled cleanup over host-wide
system prune / builder prune.
Guide for server management, system APIs, backups, and maintenance operations.
Guide for developing features in the Vite + React Router frontend.
Guide to Docklift's automated release pipeline using semantic-release.
Guide for setting up, running, and developing the Docklift project.
Guide for setting up and managing Docklift's GitHub App integration.
Coolify/Dokploy-style managed databases with Dokku-style app linking.