html:/var/www/html mounts a named volume over the whole app directory, which freezes the application code at whatever the image contained on the very first deploy (image updates never take effect).
data:/var/www/html/storage/data only persists the storage/data subfolder, so uploaded assets (storage/uploads) and the rest of storage/ are lost when the container is recreated / the system is pruned.
storage/ holds user uploads, cache and data; config/ holds configuration files. The MongoDB volume is unchanged.
Evidence
Deployed the updated template on a Dokploy instance: deploy finished in 72s, all containers running, and the app responds with HTTP 200 (<title>Cockpit</title>) on its generated domain.
Note for existing installs
This changes volume names/paths, so existing deployments of this template will start with fresh config/storage volumes. Users who already run the old template need to migrate their data from the old html/data volumes manually.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/Dokploy/templates/pull/996
**Author:** [@Siumauricio](https://github.com/Siumauricio)
**Created:** 7/14/2026
**Status:** ✅ Merged
**Merged:** 7/14/2026
**Merged by:** [@Siumauricio](https://github.com/Siumauricio)
**Base:** `canary` ← **Head:** `fix/cockpit-volumes`
---
### 📝 Commits (1)
- [`55aa824`](https://github.com/Dokploy/templates/commit/55aa82489d30e095981fba3a5ac6115527f80b38) fix(cockpit): persist config and storage volumes per upstream docs
### 📊 Changes
**1 file changed** (+4 additions, -4 deletions)
<details>
<summary>View changed files</summary>
📝 `blueprints/cockpit/docker-compose.yml` (+4 -4)
</details>
### 📄 Description
## Problem
The Cockpit CMS template mounts the wrong paths:
```yaml
volumes:
- html:/var/www/html
- data:/var/www/html/storage/data
```
- `html:/var/www/html` mounts a named volume over the whole app directory, which freezes the application code at whatever the image contained on the very first deploy (image updates never take effect).
- `data:/var/www/html/storage/data` only persists the `storage/data` subfolder, so uploaded assets (`storage/uploads`) and the rest of `storage/` are lost when the container is recreated / the system is pruned.
## Fix
Mount exactly what the [official Cockpit persistent-storage docs](https://getcockpit.com/documentation/core/quickstart/installation#persistent-storage) recommend:
```yaml
volumes:
- config:/var/www/html/config
- storage:/var/www/html/storage
```
`storage/` holds user uploads, cache and data; `config/` holds configuration files. The MongoDB volume is unchanged.
## Evidence
Deployed the updated template on a Dokploy instance: deploy finished in 72s, all containers running, and the app responds with HTTP 200 (`<title>Cockpit</title>`) on its generated domain.
## Note for existing installs
This changes volume names/paths, so existing deployments of this template will start with fresh `config`/`storage` volumes. Users who already run the old template need to migrate their data from the old `html`/`data` volumes manually.
Closes #549
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/Dokploy/templates/pull/996
Author: @Siumauricio
Created: 7/14/2026
Status: ✅ Merged
Merged: 7/14/2026
Merged by: @Siumauricio
Base:
canary← Head:fix/cockpit-volumes📝 Commits (1)
55aa824fix(cockpit): persist config and storage volumes per upstream docs📊 Changes
1 file changed (+4 additions, -4 deletions)
View changed files
📝
blueprints/cockpit/docker-compose.yml(+4 -4)📄 Description
Problem
The Cockpit CMS template mounts the wrong paths:
html:/var/www/htmlmounts a named volume over the whole app directory, which freezes the application code at whatever the image contained on the very first deploy (image updates never take effect).data:/var/www/html/storage/dataonly persists thestorage/datasubfolder, so uploaded assets (storage/uploads) and the rest ofstorage/are lost when the container is recreated / the system is pruned.Fix
Mount exactly what the official Cockpit persistent-storage docs recommend:
storage/holds user uploads, cache and data;config/holds configuration files. The MongoDB volume is unchanged.Evidence
Deployed the updated template on a Dokploy instance: deploy finished in 72s, all containers running, and the app responds with HTTP 200 (
<title>Cockpit</title>) on its generated domain.Note for existing installs
This changes volume names/paths, so existing deployments of this template will start with fresh
config/storagevolumes. Users who already run the old template need to migrate their data from the oldhtml/datavolumes manually.Closes #549
🤖 Generated with Claude Code
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.