From 44dccddd36f6ad977d12d72f2aa4aa591779fef8 Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Wed, 1 Apr 2026 08:38:32 +0000 Subject: [PATCH] Adapt devcontainer.json for systemd-based devcontainer image Update devcontainer.json settings to work with the new systemd-based devcontainer image (v4). - Bump image tag to 4-supervisor to get the systemd-enabled image - Set overrideCommand to false so the image's CMD (/sbin/init) runs as PID 1 instead of being replaced by VS Code's default sleep command - Set remoteUser to vscode to preserve the non-root shell experience (required when overrideCommand is false, since VS Code no longer injects its own user-switching wrapper) - Add /var/lib/containerd volume mount because modern Docker uses the containerd snapshotter, which stores layer data outside /var/lib/docker - Add tmpfs on /tmp to match typical systemd expectations and avoid leftover state across container restarts --- .devcontainer/devcontainer.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index a2b5e5e32..69caae3f1 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,6 +1,8 @@ { "name": "Supervisor dev", - "image": "ghcr.io/home-assistant/devcontainer:3-supervisor", + "image": "ghcr.io/home-assistant/devcontainer:4-supervisor", + "overrideCommand": false, + "remoteUser": "vscode", "containerEnv": { "WORKSPACE_DIRECTORY": "${containerWorkspaceFolder}" }, @@ -46,6 +48,8 @@ }, "mounts": [ "type=volume,target=/var/lib/docker", - "type=volume,target=/mnt/supervisor" + "type=volume,target=/var/lib/containerd", + "type=volume,target=/mnt/supervisor", + "type=tmpfs,target=/tmp" ] }