3 Commits

3 changed files with 19 additions and 13 deletions

View File

@ -15,6 +15,13 @@ RUN apt-get -y install vim
# set the github runner version
ARG RUNNER_VERSION="2.311.0"
# update the base packages, add a non-sudo user, and install Xvfb
RUN apt-get update -y && \
apt-get upgrade -y && \
apt-get install -y libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libnss3 libxss1 libasound2 libxtst6 xauth xvfb && \
useradd -m docker && \
echo 'docker ALL=(ALL) NOPASSWD:ALL' | tee -a /etc/sudoers
#Installing Docker
# Let's start with some basic stuff.
RUN sudo apt-get update -qq && sudo apt-get install -qqy \
@ -27,16 +34,9 @@ RUN sudo apt-get update -qq && sudo apt-get install -qqy \
RUN curl -sSL https://get.docker.com/ | sh
# Define additional metadata for our image.
VOLUME /var/lib/docker
RUN sudo usermod -aG docker coder
#RUN sudo usermod -aG docker docker
#Finishing Installing Docker
# update the base packages, add a non-sudo user, and install Xvfb
RUN apt-get update -y && \
apt-get upgrade -y && \
apt-get install -y libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libnss3 libxss1 libasound2 libxtst6 xauth xvfb && \
useradd -m docker && \
echo 'docker ALL=(ALL) NOPASSWD:ALL' | tee -a /etc/sudoers
# install python and the packages the your code depends on along with jq so we can parse JSON
# add additional packages as necessary
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
@ -56,14 +56,14 @@ COPY start.sh start.sh
# make the script executable
RUN chmod +x start.sh
# since the config and run script for actions are not allowed to be run by root,
# set the user to "docker" so all subsequent commands are run as the docker user
USER docker
# Install the magic wrapper.
ADD ./wrapdocker.sh /usr/local/bin/wrapdocker.sh
RUN sudo chmod +x /usr/local/bin/wrapdocker.sh
RUN sudo sed -i "2 i\exec sudo /usr/local/bin/wrapdocker.sh &" start.sh
# since the config and run script for actions are not allowed to be run by root,
# set the user to "docker" so all subsequent commands are run as the docker user
USER docker
# set the entrypoint to the start.sh script
ENTRYPOINT ["./start.sh"]

View File

@ -1,3 +1,3 @@
# Docker Github Action Runner
## Version 1.0.9
## Version 1.0.12

View File

@ -1,5 +1,9 @@
#!/bin/bash
if [[ -z "${HOME_USER}" ]]; then
HOME_USER="docker"
fi
# Ensure that all nodes in /dev/mapper correspond to mapped devices currently loaded by the device-mapper kernel driver
dmsetup mknodes
@ -108,6 +112,8 @@ else
fi
sleep 1
done
sudo chmod -R a+rwX /var/run/docker.sock
sudo su - ${HOME_USER} -c "sudo usermod -aG docker ${HOME_USER}"
[[ $1 ]] && exec "$@"
exec bash --login
fi