In Linux(Ubutu 14.04)
FROM ubuntu:14.04
RUN apt-get update && apt-get install -y firefox
# Replace 1000 with your user / group id
RUN export uid=1000 gid=1000 && \
mkdir -p /home/dev && \
echo "dev:x:${uid}:${gid}:Developer,,,:/home/dev:/bin/bash" >> /etc/passwd && \
echo "dev:x:${uid}:" >> /etc/group && \
echo "dev ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/dev && \
chmod 0440 /etc/sudoers.d/dev && \
chown ${uid}:${gid} -R /home/dev
USER dev
ENV HOME /home/dev
CMD /usr/bin/firefox
In Linux(Ubutu 16.04 and later)
FROM ubuntu:16.04 RUN apt-get update && apt-get install -y firefox ENV USERNAME dev ENV HOME /home/$USERNAME RUN useradd -m $USERNAME && \ echo "$USERNAME:$USERNAME" | chpasswd && \ usermod --shell /bin/bash $USERNAME && \ usermod -aG sudo $USERNAME && \ mkdir /etc/sudoers.d && \ echo "$USERNAME ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/$USERNAME && \ chmod 0440 /etc/sudoers.d/$USERNAME && \ # Replace 1000 with your user/group id usermod --uid 1000 $USERNAME && \ groupmod --gid 1000 $USERNAME RUN apt-get install -y sudo USER dev ENV HOME /home/dev CMD /usr/bin/firefox
Host machine(Linux)
xhost +
Run docker cmd
docker run [--rm [-it]|-d] \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e DISPLAY \ imagename [cmd]