From 22de42b5a8320b0acf46971ba533151ef7ef68ac Mon Sep 17 00:00:00 2001 From: Felipe Santos Date: Thu, 12 Sep 2024 10:00:46 -0300 Subject: [PATCH 1/5] Fix devcontainer But this is still failing with permission denied in some cases. --- .devcontainer/Dockerfile | 5 ++++- .devcontainer/devcontainer.json | 8 +++----- docker-compose.yml | 7 ++++--- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 5c196009..bc136453 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,4 +1,4 @@ -FROM mcr.microsoft.com/devcontainers/base:ubuntu-22.04 +FROM mcr.microsoft.com/devcontainers/base:ubuntu-24.04 USER vscode @@ -7,3 +7,6 @@ ARG HOME="/home/vscode" ENV VOLTA_HOME="${HOME}/.volta" ENV PATH="${VOLTA_HOME}/bin:${PATH}" RUN bash -c "$(curl -fsSL https://get.volta.sh)" -- --skip-setup + +ENTRYPOINT ["/usr/local/share/docker-init.sh"] +CMD ["sleep", "infinity"] diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 9f34149b..883dbe3f 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -4,12 +4,10 @@ "service": "dev", "features": { "ghcr.io/devcontainers/features/docker-outside-of-docker:1": { - "moby": false, - "dockerDashComposeVersion": "v2" + "moby": false } }, "workspaceFolder": "${localWorkspaceFolder}", - "shutdownAction": "stopCompose", "forwardPorts": [10001, "hass:8123", "frigate:5000"], "portsAttributes": { "10001": { @@ -25,8 +23,8 @@ "onAutoForward": "silent" } }, - "initializeCommand": ".devcontainer/initialize.sh", - "postCreateCommand": "yarn install", + "initializeCommand": [".devcontainer/initialize.sh"], + "postCreateCommand": ["yarn", "install"], "customizations": { "vscode": { "extensions": [ diff --git a/docker-compose.yml b/docker-compose.yml index bc9e5cc1..7d56cfb4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,9 +2,10 @@ services: dev: init: true - build: .devcontainer - entrypoint: /usr/local/share/docker-init.sh - command: sleep infinity + build: + context: . + dockerfile: .devcontainer/Dockerfile + network_mode: host env_file: - .env volumes: From 49924fc80100463c05415a2896e045fccdb6255a Mon Sep 17 00:00:00 2001 From: Felipe Santos Date: Thu, 12 Sep 2024 13:52:56 +0000 Subject: [PATCH 2/5] Switch to devcontainer:@ --- .devcontainer/Dockerfile | 16 +++++----------- .devcontainer/devcontainer.json | 5 ----- docker-compose.yml | 5 +---- 3 files changed, 6 insertions(+), 20 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index bc136453..aaa78bf0 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,12 +1,6 @@ -FROM mcr.microsoft.com/devcontainers/base:ubuntu-24.04 +FROM ghcr.io/felipecrs/devcontainer:2 -USER vscode - -# Install Volta -ARG HOME="/home/vscode" -ENV VOLTA_HOME="${HOME}/.volta" -ENV PATH="${VOLTA_HOME}/bin:${PATH}" -RUN bash -c "$(curl -fsSL https://get.volta.sh)" -- --skip-setup - -ENTRYPOINT ["/usr/local/share/docker-init.sh"] -CMD ["sleep", "infinity"] +RUN --mount=type=bind,source=package.json,target=/tmp/package.json \ + retry --tries 3 --sleep 15s -- volta install \ + "node@$(jq -er .volta.node /tmp/package.json)" \ + "yarn@$(jq -er .volta.yarn /tmp/package.json)" diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 883dbe3f..6725e351 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -2,11 +2,6 @@ { "dockerComposeFile": "../docker-compose.yml", "service": "dev", - "features": { - "ghcr.io/devcontainers/features/docker-outside-of-docker:1": { - "moby": false - } - }, "workspaceFolder": "${localWorkspaceFolder}", "forwardPorts": [10001, "hass:8123", "frigate:5000"], "portsAttributes": { diff --git a/docker-compose.yml b/docker-compose.yml index 7d56cfb4..46142256 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,15 +1,12 @@ ---- services: dev: - init: true build: context: . dockerfile: .devcontainer/Dockerfile - network_mode: host env_file: - .env volumes: - - /var/run/docker.sock:/var/run/docker-host.sock + - /var/run/docker.sock:/var/run/docker.sock - .:${LOCAL_WORKSPACE_FOLDER}:cached hass: extends: From e45b281b53b73eb84bf72ac5667c0f703489be36 Mon Sep 17 00:00:00 2001 From: Felipe Santos Date: Thu, 12 Sep 2024 16:29:17 +0000 Subject: [PATCH 3/5] Switch back to original container --- .devcontainer/Dockerfile | 15 ++++++++++----- .devcontainer/devcontainer.json | 15 ++++++++++++--- .devcontainer/frigate-hass-integration | 2 +- .vscode/tasks.json | 5 ++++- docker-compose.yml | 9 ++++----- 5 files changed, 31 insertions(+), 15 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index aaa78bf0..32df1809 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,6 +1,11 @@ -FROM ghcr.io/felipecrs/devcontainer:2 +FROM mcr.microsoft.com/devcontainers/base:ubuntu-22.04 -RUN --mount=type=bind,source=package.json,target=/tmp/package.json \ - retry --tries 3 --sleep 15s -- volta install \ - "node@$(jq -er .volta.node /tmp/package.json)" \ - "yarn@$(jq -er .volta.yarn /tmp/package.json)" +USER vscode + +# Install Volta +ARG HOME="/home/vscode" +ENV VOLTA_HOME="${HOME}/.volta" +ENV PATH="${VOLTA_HOME}/bin:${PATH}" +RUN bash -c "$(curl -fsSL https://get.volta.sh)" -- --skip-setup + +CMD ["sleep", "infinity"] diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 6725e351..7c51330b 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,8 +1,16 @@ // See https://aka.ms/vscode-remote/devcontainer.json for format details. { "dockerComposeFile": "../docker-compose.yml", - "service": "dev", + "service": "devcontainer", + "features": { + "ghcr.io/devcontainers/features/docker-outside-of-docker:1": { + "moby": false + } + }, + "updateRemoteUserUID": true, "workspaceFolder": "${localWorkspaceFolder}", + "initializeCommand": [".devcontainer/initialize.sh"], + "postCreateCommand": ["yarn", "install"], "forwardPorts": [10001, "hass:8123", "frigate:5000"], "portsAttributes": { "10001": { @@ -18,8 +26,6 @@ "onAutoForward": "silent" } }, - "initializeCommand": [".devcontainer/initialize.sh"], - "postCreateCommand": ["yarn", "install"], "customizations": { "vscode": { "extensions": [ @@ -32,9 +38,12 @@ "davidanson.vscode-markdownlint", "redhat.vscode-yaml", "lokalise.i18n-ally", + "vitest.explorer", + "inlang.vs-code-extension", "ms-azuretools.vscode-docker" ], "settings": { + "task.allowAutomaticTasks": "on", "files.eol": "\n", "editor.tabSize": 2, "editor.formatOnPaste": false, diff --git a/.devcontainer/frigate-hass-integration b/.devcontainer/frigate-hass-integration index f54791ce..74ed5e69 160000 --- a/.devcontainer/frigate-hass-integration +++ b/.devcontainer/frigate-hass-integration @@ -1 +1 @@ -Subproject commit f54791cef3c214eb8df4fd433beddc2b9e0a66a9 +Subproject commit 74ed5e6948001347d35c292cd9c6862d2ebc6c39 diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 53d59ad8..e8cbbcd0 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -20,7 +20,10 @@ "endsPattern": "^created" } }, - "isBackground": true + "isBackground": true, + "runOptions": { + "runOn": "folderOpen" + } } ] } diff --git a/docker-compose.yml b/docker-compose.yml index 46142256..a8ce8b8e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,12 +1,11 @@ services: - dev: - build: - context: . - dockerfile: .devcontainer/Dockerfile + devcontainer: + build: .devcontainer + init: true env_file: - .env volumes: - - /var/run/docker.sock:/var/run/docker.sock + - /var/run/docker.sock:/var/run/docker-host.sock - .:${LOCAL_WORKSPACE_FOLDER}:cached hass: extends: From ed307ebd0da088da4cc1bebf0e55d9a2d6000b70 Mon Sep 17 00:00:00 2001 From: Felipe Santos Date: Thu, 12 Sep 2024 16:31:52 +0000 Subject: [PATCH 4/5] Add YAML --- --- docker-compose.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/docker-compose.yml b/docker-compose.yml index a8ce8b8e..84415b0e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,3 +1,4 @@ +--- services: devcontainer: build: .devcontainer From 270921d91423f6a7c8fe8506372ff4c6c40a973d Mon Sep 17 00:00:00 2001 From: Felipe Santos Date: Fri, 13 Sep 2024 08:48:57 -0300 Subject: [PATCH 5/5] Update integration submodule --- .devcontainer/frigate-hass-integration | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/frigate-hass-integration b/.devcontainer/frigate-hass-integration index 74ed5e69..070fbf2e 160000 --- a/.devcontainer/frigate-hass-integration +++ b/.devcontainer/frigate-hass-integration @@ -1 +1 @@ -Subproject commit 74ed5e6948001347d35c292cd9c6862d2ebc6c39 +Subproject commit 070fbf2eccda6c8437b82c3bc23dc95e80826375