diff --git a/packages/dockerCompose/src/userSettings.ts b/packages/dockerCompose/src/userSettings.ts index aa9191f94a..e99d69773f 100644 --- a/packages/dockerCompose/src/userSettings.ts +++ b/packages/dockerCompose/src/userSettings.ts @@ -236,9 +236,14 @@ export function applyUserSettings( ); // ##### + const existingLabels = service.labels || {}; + const newDefaultLabels = writeDefaultsToLabels(pick(service, ["environment", "ports", "volumes"])); const nextLabels = { - ...(service.labels || {}), - ...writeDefaultsToLabels(pick(service, ["environment", "ports", "volumes"])) + // New defaults as base layer (only matters on first install when no labels exist) + ...newDefaultLabels, + // Existing labels take precedence, preserving original package defaults + // and preventing label drift when the daemon re-applies user settings + ...existingLabels }; return {