Skip to content

Instantly share code, notes, and snippets.

@pangyuteng
Last active June 21, 2024 02:17
Show Gist options
  • Save pangyuteng/7fdc95e0a64abe1e09310ff0f00fa9d3 to your computer and use it in GitHub Desktop.
Save pangyuteng/7fdc95e0a64abe1e09310ff0f00fa9d3 to your computer and use it in GitHub Desktop.
non-root docker

non-root docker examples.

--

build.sh,Dockerfile,run.sh,condor.sub,Dockerfile.matlab

docker build --build-arg GROUPID=$(id -g) \
--build-arg USERID=$(id -u) \
--build-arg USERNAME=$USER \
-t okok:latest .
universe = docker
docker_image = okok:latest
executable = run.sh
transfer_input_files = run.sh
should_transfer_files = YES
when_to_transfer_output = ON_EXIT
output = log/$(cluster).$(process).out
error = log/$(cluster).$(process).err
log = log/$(cluster).$(process).log
requirements = (Arch == "X86_64" && OpSys =="LINUX")
#requirements = (Machine == "okok.edu")
request_cpus = 1
request_memory = 2GB
max_materialize = 1
arguments = ""
queue
FROM pytorch/pytorch:2.2.2-cuda11.8-cudnn8-runtime
ARG GROUPID
ARG USERID
ARG USERNAME
RUN groupadd -g $GROUPID developer
RUN useradd --no-log-init -u $USERID -g $GROUPID -s /bin/bash $USERNAME
FROM mathworks/matlab:r2024a
ARG GROUPID
ARG USERID
ARG USERNAME
USER root
RUN groupadd -g ${GROUPID} mygroup
RUN useradd --no-log-init -u ${USERID} -g 1000 -s /bin/bash -md /home/${USERNAME} ${USERNAME}
RUN usermod -a -G ${GROUPID} ${USERNAME}
RUN echo "pteng ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/${USERNAME}
RUN chmod 0440 /etc/sudoers.d/${USERNAME}
USER ${USERNAME}
WORKDIR /home/${USERNAME}
ENTRYPOINT ["/bin/run.sh"]
CMD [""]
#!/bin/bash
python -c "import getpass;print(getpass.getuser())"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment