Description
Server-side generated docker-compose.yml can drop nginx-proxy-manager volumes and other service settings even when they are declared in the project compose definition.
In Syncopia, the checked-in docker/prod/compose.yml includes:
npm-data:/data
npm-letsencrypt:/etc/letsencrypt
- published ports
80, 81, and 443
After regeneration on the target server, nginx-proxy-manager restarted without its volumes mounted, which caused previously configured proxied hosts/settings to disappear and had to be restored manually.
Suspected Cause
The server deploy path appears to rebuild project services from the reduced stacker.yml service model and/or auto-generated proxy service rather than preserving the richer compose-file definition for production deploys.
Steps to Reproduce
- Define nginx-proxy-manager volumes and related settings in the production compose configuration.
- Deploy to a remote server through Stacker.
- Inspect the generated
docker-compose.yml on the target server.
- Observe that nginx-proxy-manager volumes and/or extra service settings are missing.
- Restart/redeploy and observe loss of persisted NPM state.
Expected Behavior
The generated compose used on the target server should preserve declared service volumes and additional config, especially for stateful services like nginx-proxy-manager.
Actual Behavior
Generated compose can omit those settings, leading to container recreation without mounted volumes and loss of existing NPM state.
Acceptance Criteria
Description
Server-side generated
docker-compose.ymlcan drop nginx-proxy-manager volumes and other service settings even when they are declared in the project compose definition.In Syncopia, the checked-in
docker/prod/compose.ymlincludes:npm-data:/datanpm-letsencrypt:/etc/letsencrypt80,81, and443After regeneration on the target server, nginx-proxy-manager restarted without its volumes mounted, which caused previously configured proxied hosts/settings to disappear and had to be restored manually.
Suspected Cause
The server deploy path appears to rebuild project services from the reduced
stacker.ymlservice model and/or auto-generated proxy service rather than preserving the richer compose-file definition for production deploys.Steps to Reproduce
docker-compose.ymlon the target server.Expected Behavior
The generated compose used on the target server should preserve declared service volumes and additional config, especially for stateful services like nginx-proxy-manager.
Actual Behavior
Generated compose can omit those settings, leading to container recreation without mounted volumes and loss of existing NPM state.
Acceptance Criteria
/dataand/etc/letsencryptmounted when defined by the project.