From 404cd3e468627c79fbbc746cf68dc2005dc5fbff Mon Sep 17 00:00:00 2001 From: Danny Avila Date: Tue, 9 Jul 2024 15:52:25 -0400 Subject: [PATCH] refactor: Add sudo permissions for vscode user in devcontainer setup --- .devcontainer/Dockerfile | 7 +++++++ .devcontainer/devcontainer.json | 2 +- .devcontainer/docker-compose.yml | 2 ++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index d1a1a71825..0ab9b7dceb 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -14,10 +14,17 @@ RUN if [ "$INSTALL_DOCKER" = "true" ]; then \ apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin; \ fi +# Install sudo +RUN apt-get update && apt-get install -y sudo + # Set up non-root user RUN useradd -m -s /bin/bash vscode RUN if [ "$INSTALL_DOCKER" = "true" ]; then usermod -aG docker vscode; fi +# Add vscode user to sudoers +RUN echo "vscode ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/vscode && \ + chmod 0440 /etc/sudoers.d/vscode + USER vscode WORKDIR /workspaces diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index dc300fb089..63d9e5b236 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -16,7 +16,7 @@ } }, "remoteUser": "vscode", - "postCreateCommand": "sudo chown -R vscode:vscode /workspaces && if [ \"$CODESPACES\" = \"true\" ]; then sudo apt-get update && sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin; fi", + "postCreateCommand": "sudo chown root:docker /var/run/docker.sock && sudo chmod 660 /var/run/docker.sock", "remoteEnv": { "INSTALL_DOCKER": "${localEnv:INSTALL_DOCKER:false}" } diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml index 2066644548..cb36f48448 100644 --- a/.devcontainer/docker-compose.yml +++ b/.devcontainer/docker-compose.yml @@ -4,6 +4,8 @@ version: "3.8" services: app: + group_add: + - docker build: context: .. dockerfile: .devcontainer/Dockerfile