diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 03bfacd..5d2f340 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -11,3 +11,11 @@ RUN chown root:root /root/.tmux.conf # Install the Namespace (nsc) CLI - https://namespace.so/docs/reference/cli/installation # Install system-wide so it is on PATH for both the `node` and `root` users. RUN curl -fsSL https://get.namespace.so/cloud/install.sh | NS_INSTALL_DIR=/usr/local/bin sh + +# Install Playwright with the Chromium browser and its required OS dependencies. +# Browsers are stored in a shared, system-wide location (PLAYWRIGHT_BROWSERS_PATH) +# so both the `node` and `root` users can run Playwright without re-downloading. +ENV PLAYWRIGHT_BROWSERS_PATH=/ms-playwright +RUN npm install -g playwright \ + && playwright install --with-deps chromium \ + && chmod -R a+rx /ms-playwright diff --git a/.devcontainer/devcontainer-lock.json b/.devcontainer/devcontainer-lock.json index 6a80830..fc2ad44 100644 --- a/.devcontainer/devcontainer-lock.json +++ b/.devcontainer/devcontainer-lock.json @@ -25,7 +25,12 @@ "resolved": "ghcr.io/devcontainers-extra/features/ruby-asdf@sha256:2109262319dcbc83232919ec0b15bc5336b60999d9c6231498ff59f48f81f670", "integrity": "sha256:2109262319dcbc83232919ec0b15bc5336b60999d9c6231498ff59f48f81f670" }, - "ghcr.io/devcontainers/features/copilot-cli:": { + "ghcr.io/devcontainers/features/azure-cli:1": { + "version": "1.3.0", + "resolved": "ghcr.io/devcontainers/features/azure-cli@sha256:d98f1066c077be0fa9d115b718f458bd803e415181b4a96f82a6f5d9f77241ac", + "integrity": "sha256:d98f1066c077be0fa9d115b718f458bd803e415181b4a96f82a6f5d9f77241ac" + }, + "ghcr.io/devcontainers/features/copilot-cli:1": { "version": "1.1.3", "resolved": "ghcr.io/devcontainers/features/copilot-cli@sha256:e10d091ae7ef9b8d2ed5f601d75f5a090bc04acbac1a26d4cd3c0d5edde4ea10", "integrity": "sha256:e10d091ae7ef9b8d2ed5f601d75f5a090bc04acbac1a26d4cd3c0d5edde4ea10" diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 6a85519..ee38034 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -19,6 +19,9 @@ "ghcr.io/devcontainers/features/sshd:1": {}, "ghcr.io/devcontainers/features/kubectl-helm-minikube:1": {}, "ghcr.io/devcontainers/features/github-cli:1": {}, + "ghcr.io/devcontainers/features/azure-cli:1": { + "version": "latest" + }, "ghcr.io/devcontainers/features/copilot-cli:1": {}, "ghcr.io/devcontainers-extra/features/claude-code:2": {}, "ghcr.io/devcontainers-extra/features/opencode:1": {}, diff --git a/README.md b/README.md index aab63e3..77dfb5e 100644 --- a/README.md +++ b/README.md @@ -14,11 +14,13 @@ My personal devcontainer for VSCode. - sshd - kubectl / helm / minikube - GitHub CLI (`gh`) +- Azure CLI (`az`, latest) - GitHub Copilot CLI - Anthropic Claude Code - opencode - `@openprose/prose-cli` (npm) - Namespace CLI (`nsc`) +- Playwright with the Chromium browser (and required OS dependencies) ## APT packages