From e93175c85baed01d0e292243ff1c6e57f098d96c Mon Sep 17 00:00:00 2001 From: Daniel Eck Date: Tue, 31 Oct 2023 14:54:39 -0400 Subject: [PATCH] fix: grant non-root group perms to enable corepack Makes `gid=1000` (the non-root user `node`'s group id) the owning group of `/usr/local/bin`. This enables the non-root user to perform operations like `corepack {enable,prepare,...}` without permission errors. Closes 1732. --- 18/alpine3.17/Dockerfile | 1 + 18/alpine3.18/Dockerfile | 1 + 18/bookworm-slim/Dockerfile | 1 + 18/bookworm/Dockerfile | 1 + 18/bullseye-slim/Dockerfile | 1 + 18/bullseye/Dockerfile | 1 + 18/buster-slim/Dockerfile | 1 + 18/buster/Dockerfile | 1 + 20/alpine3.17/Dockerfile | 1 + 20/alpine3.18/Dockerfile | 1 + 20/bookworm-slim/Dockerfile | 1 + 20/bookworm/Dockerfile | 1 + 20/bullseye-slim/Dockerfile | 1 + 20/bullseye/Dockerfile | 1 + 20/buster-slim/Dockerfile | 1 + 20/buster/Dockerfile | 1 + 21/alpine3.17/Dockerfile | 1 + 21/alpine3.18/Dockerfile | 1 + 21/bookworm-slim/Dockerfile | 1 + 21/bookworm/Dockerfile | 1 + 21/bullseye-slim/Dockerfile | 1 + 21/bullseye/Dockerfile | 1 + Dockerfile-alpine.template | 1 + Dockerfile-debian.template | 1 + Dockerfile-slim.template | 1 + 25 files changed, 25 insertions(+) diff --git a/18/alpine3.17/Dockerfile b/18/alpine3.17/Dockerfile index 471ed14ce0..144eb56e13 100644 --- a/18/alpine3.17/Dockerfile +++ b/18/alpine3.17/Dockerfile @@ -95,6 +95,7 @@ RUN apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apk del .build-deps-yarn \ # smoke test diff --git a/18/alpine3.18/Dockerfile b/18/alpine3.18/Dockerfile index b1fbc44266..b37aa73141 100644 --- a/18/alpine3.18/Dockerfile +++ b/18/alpine3.18/Dockerfile @@ -95,6 +95,7 @@ RUN apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apk del .build-deps-yarn \ # smoke test diff --git a/18/bookworm-slim/Dockerfile b/18/bookworm-slim/Dockerfile index a121e2e6e4..601ef69aae 100644 --- a/18/bookworm-slim/Dockerfile +++ b/18/bookworm-slim/Dockerfile @@ -83,6 +83,7 @@ RUN set -ex \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apt-mark auto '.*' > /dev/null \ && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } \ diff --git a/18/bookworm/Dockerfile b/18/bookworm/Dockerfile index 2d97808c85..31f7070203 100644 --- a/18/bookworm/Dockerfile +++ b/18/bookworm/Dockerfile @@ -69,6 +69,7 @@ RUN set -ex \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ # smoke test && yarn --version diff --git a/18/bullseye-slim/Dockerfile b/18/bullseye-slim/Dockerfile index e9799b353b..f9c55e52dd 100644 --- a/18/bullseye-slim/Dockerfile +++ b/18/bullseye-slim/Dockerfile @@ -83,6 +83,7 @@ RUN set -ex \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apt-mark auto '.*' > /dev/null \ && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } \ diff --git a/18/bullseye/Dockerfile b/18/bullseye/Dockerfile index 0316628aae..6a292e3322 100644 --- a/18/bullseye/Dockerfile +++ b/18/bullseye/Dockerfile @@ -69,6 +69,7 @@ RUN set -ex \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ # smoke test && yarn --version diff --git a/18/buster-slim/Dockerfile b/18/buster-slim/Dockerfile index 1c7b240efe..bc978ee0d7 100644 --- a/18/buster-slim/Dockerfile +++ b/18/buster-slim/Dockerfile @@ -83,6 +83,7 @@ RUN set -ex \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apt-mark auto '.*' > /dev/null \ && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } \ diff --git a/18/buster/Dockerfile b/18/buster/Dockerfile index 7959222daf..dfa0361c90 100644 --- a/18/buster/Dockerfile +++ b/18/buster/Dockerfile @@ -69,6 +69,7 @@ RUN set -ex \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ # smoke test && yarn --version diff --git a/20/alpine3.17/Dockerfile b/20/alpine3.17/Dockerfile index dc46a75281..a1fdb8b385 100644 --- a/20/alpine3.17/Dockerfile +++ b/20/alpine3.17/Dockerfile @@ -95,6 +95,7 @@ RUN apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apk del .build-deps-yarn \ # smoke test diff --git a/20/alpine3.18/Dockerfile b/20/alpine3.18/Dockerfile index 011f5222ac..a0d7737677 100644 --- a/20/alpine3.18/Dockerfile +++ b/20/alpine3.18/Dockerfile @@ -95,6 +95,7 @@ RUN apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apk del .build-deps-yarn \ # smoke test diff --git a/20/bookworm-slim/Dockerfile b/20/bookworm-slim/Dockerfile index 36bf144e75..03a2cba2d3 100644 --- a/20/bookworm-slim/Dockerfile +++ b/20/bookworm-slim/Dockerfile @@ -83,6 +83,7 @@ RUN set -ex \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apt-mark auto '.*' > /dev/null \ && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } \ diff --git a/20/bookworm/Dockerfile b/20/bookworm/Dockerfile index 35734a5d10..36b02d3071 100644 --- a/20/bookworm/Dockerfile +++ b/20/bookworm/Dockerfile @@ -69,6 +69,7 @@ RUN set -ex \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ # smoke test && yarn --version diff --git a/20/bullseye-slim/Dockerfile b/20/bullseye-slim/Dockerfile index 0780ada029..3e0b270b4a 100644 --- a/20/bullseye-slim/Dockerfile +++ b/20/bullseye-slim/Dockerfile @@ -83,6 +83,7 @@ RUN set -ex \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apt-mark auto '.*' > /dev/null \ && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } \ diff --git a/20/bullseye/Dockerfile b/20/bullseye/Dockerfile index 16906793bd..d6cef72700 100644 --- a/20/bullseye/Dockerfile +++ b/20/bullseye/Dockerfile @@ -69,6 +69,7 @@ RUN set -ex \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ # smoke test && yarn --version diff --git a/20/buster-slim/Dockerfile b/20/buster-slim/Dockerfile index e21ea76e75..9bb9f2790a 100644 --- a/20/buster-slim/Dockerfile +++ b/20/buster-slim/Dockerfile @@ -83,6 +83,7 @@ RUN set -ex \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apt-mark auto '.*' > /dev/null \ && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } \ diff --git a/20/buster/Dockerfile b/20/buster/Dockerfile index 59c62adb4c..b68bac9dbb 100644 --- a/20/buster/Dockerfile +++ b/20/buster/Dockerfile @@ -69,6 +69,7 @@ RUN set -ex \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ # smoke test && yarn --version diff --git a/21/alpine3.17/Dockerfile b/21/alpine3.17/Dockerfile index 54ba8fdfaf..bd8b5ffd7f 100644 --- a/21/alpine3.17/Dockerfile +++ b/21/alpine3.17/Dockerfile @@ -95,6 +95,7 @@ RUN apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apk del .build-deps-yarn \ # smoke test diff --git a/21/alpine3.18/Dockerfile b/21/alpine3.18/Dockerfile index bb468226ec..793a71791e 100644 --- a/21/alpine3.18/Dockerfile +++ b/21/alpine3.18/Dockerfile @@ -95,6 +95,7 @@ RUN apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apk del .build-deps-yarn \ # smoke test diff --git a/21/bookworm-slim/Dockerfile b/21/bookworm-slim/Dockerfile index d97fba8c3b..56348fb1cb 100644 --- a/21/bookworm-slim/Dockerfile +++ b/21/bookworm-slim/Dockerfile @@ -83,6 +83,7 @@ RUN set -ex \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apt-mark auto '.*' > /dev/null \ && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } \ diff --git a/21/bookworm/Dockerfile b/21/bookworm/Dockerfile index 70aab56a13..f59df12f44 100644 --- a/21/bookworm/Dockerfile +++ b/21/bookworm/Dockerfile @@ -69,6 +69,7 @@ RUN set -ex \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ # smoke test && yarn --version diff --git a/21/bullseye-slim/Dockerfile b/21/bullseye-slim/Dockerfile index 15b1d6424a..544e716c89 100644 --- a/21/bullseye-slim/Dockerfile +++ b/21/bullseye-slim/Dockerfile @@ -83,6 +83,7 @@ RUN set -ex \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apt-mark auto '.*' > /dev/null \ && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } \ diff --git a/21/bullseye/Dockerfile b/21/bullseye/Dockerfile index 41a8240750..79f1a8739c 100644 --- a/21/bullseye/Dockerfile +++ b/21/bullseye/Dockerfile @@ -69,6 +69,7 @@ RUN set -ex \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ # smoke test && yarn --version diff --git a/Dockerfile-alpine.template b/Dockerfile-alpine.template index 553da29bf6..f3527803e4 100644 --- a/Dockerfile-alpine.template +++ b/Dockerfile-alpine.template @@ -85,6 +85,7 @@ RUN apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apk del .build-deps-yarn \ # smoke test diff --git a/Dockerfile-debian.template b/Dockerfile-debian.template index fc05538071..a2fdf81d41 100644 --- a/Dockerfile-debian.template +++ b/Dockerfile-debian.template @@ -59,6 +59,7 @@ RUN set -ex \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ # smoke test && yarn --version diff --git a/Dockerfile-slim.template b/Dockerfile-slim.template index 68da00d4c1..034f4aeacc 100644 --- a/Dockerfile-slim.template +++ b/Dockerfile-slim.template @@ -73,6 +73,7 @@ RUN set -ex \ && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \ + && chgrp 1000 /usr/local/bin && chmod g+w /usr/local/bin \ && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ && apt-mark auto '.*' > /dev/null \ && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } \