Support non default UID/GID for build container
Set the current UID and GID of the executing user as build arguments for the build of the container, so that environments with other UIDs and GIDs than 1000 are supported.
This commit is contained in:
parent
d1b215aeec
commit
f0528f835f
@ -1,5 +1,8 @@
|
|||||||
FROM debian:bullseye-slim
|
FROM debian:bullseye-slim
|
||||||
|
|
||||||
|
ARG DUID=1000
|
||||||
|
ARG DGID=1000
|
||||||
|
|
||||||
ARG DEBIAN_FRONTEND=noninteractive
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
@ -30,7 +33,7 @@ RUN mkdir /tmp/ec &&\
|
|||||||
mv bin/ec-linux-amd64 /usr/local/bin/editorconfig-checker &&\
|
mv bin/ec-linux-amd64 /usr/local/bin/editorconfig-checker &&\
|
||||||
rm -rf /tmp/ec
|
rm -rf /tmp/ec
|
||||||
|
|
||||||
RUN useradd -d /gluon gluon
|
RUN groupadd -g $DGID gluon && useradd -g $DGID -u $DUID -d /gluon gluon
|
||||||
USER gluon
|
USER gluon
|
||||||
|
|
||||||
VOLUME /gluon
|
VOLUME /gluon
|
||||||
|
@ -11,11 +11,11 @@ TAG="gluon:${BRANCH:-latest}"
|
|||||||
|
|
||||||
if [ "$(command -v podman)" ]
|
if [ "$(command -v podman)" ]
|
||||||
then
|
then
|
||||||
podman build -t "${TAG}" contrib/docker
|
podman build --build-arg DGID="$(id -g)" --build-arg DUID="$(id -u)" -t "${TAG}" contrib/docker
|
||||||
podman run -it --rm --userns=keep-id --volume="$(pwd):/gluon" "${TAG}"
|
podman run -it --rm --userns=keep-id --volume="$(pwd):/gluon" "${TAG}"
|
||||||
elif [ "$(command -v docker)" ]
|
elif [ "$(command -v docker)" ]
|
||||||
then
|
then
|
||||||
docker build -t "${TAG}" contrib/docker
|
docker build --build-arg DGID="$(id -g)" --build-arg DUID="$(id -u)" -t "${TAG}" contrib/docker
|
||||||
docker run -it --rm --volume="$(pwd):/gluon" "${TAG}"
|
docker run -it --rm --volume="$(pwd):/gluon" "${TAG}"
|
||||||
else
|
else
|
||||||
1>&2 echo "Please install either podman or docker. Exiting" >/dev/null
|
1>&2 echo "Please install either podman or docker. Exiting" >/dev/null
|
||||||
|
Loading…
Reference in New Issue
Block a user