mirror of
https://github.com/jessfraz/dockerfiles.git
synced 2024-11-27 04:16:45 +01:00
e6953b7a85
Signed-off-by: Jess Frazelle <acidburn@microsoft.com>
72 lines
2.1 KiB
Docker
72 lines
2.1 KiB
Docker
# Run Chrome in a container
|
|
#
|
|
# docker run -it \
|
|
# --net host \ # may as well YOLO
|
|
# --cpuset-cpus 0 \ # control the cpu
|
|
# --memory 512mb \ # max memory it can use
|
|
# -v /tmp/.X11-unix:/tmp/.X11-unix \ # mount the X11 socket
|
|
# -e DISPLAY=unix$DISPLAY \
|
|
# -v $HOME/Downloads:/home/chrome/Downloads \
|
|
# -v $HOME/.config/google-chrome/:/data \ # if you want to save state
|
|
# --security-opt seccomp=$HOME/chrome.json \
|
|
# --device /dev/snd \ # so we have sound
|
|
# --device /dev/dri \
|
|
# -v /dev/shm:/dev/shm \
|
|
# --name chrome \
|
|
# jess/chrome
|
|
#
|
|
# You will want the custom seccomp profile:
|
|
# wget https://raw.githubusercontent.com/jfrazelle/dotfiles/master/etc/docker/seccomp/chrome.json -O ~/chrome.json
|
|
|
|
# Base docker image
|
|
FROM debian:sid-slim
|
|
LABEL maintainer "Jessie Frazelle <jess@linux.com>"
|
|
|
|
# Install Chrome
|
|
RUN apt-get update && apt-get install -y \
|
|
apt-transport-https \
|
|
ca-certificates \
|
|
curl \
|
|
gnupg \
|
|
hicolor-icon-theme \
|
|
libcanberra-gtk* \
|
|
libgl1-mesa-dri \
|
|
libgl1-mesa-glx \
|
|
libpango1.0-0 \
|
|
libpulse0 \
|
|
libv4l-0 \
|
|
fonts-symbola \
|
|
--no-install-recommends \
|
|
&& curl -sSL https://dl.google.com/linux/linux_signing_key.pub | apt-key add - \
|
|
&& echo "deb [arch=amd64] https://dl.google.com/linux/chrome/deb/ stable main" > /etc/apt/sources.list.d/google.list \
|
|
&& apt-get update && apt-get install -y \
|
|
google-chrome-stable \
|
|
--no-install-recommends \
|
|
&& apt-get purge --auto-remove -y curl \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Download the google-talkplugin
|
|
RUN set -x \
|
|
&& apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
ca-certificates \
|
|
curl \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
&& curl -sSL "https://dl.google.com/linux/direct/google-talkplugin_current_amd64.deb" -o /tmp/google-talkplugin-amd64.deb \
|
|
&& dpkg -i /tmp/google-talkplugin-amd64.deb \
|
|
&& rm -rf /tmp/*.deb \
|
|
&& apt-get purge -y --auto-remove curl
|
|
|
|
# Add chrome user
|
|
RUN groupadd -r chrome && useradd -r -g chrome -G audio,video chrome \
|
|
&& mkdir -p /home/chrome/Downloads && chown -R chrome:chrome /home/chrome
|
|
|
|
COPY local.conf /etc/fonts/local.conf
|
|
|
|
# Run Chrome as non privileged user
|
|
USER chrome
|
|
|
|
# Autorun chrome
|
|
ENTRYPOINT [ "google-chrome" ]
|
|
CMD [ "--user-data-dir=/data" ]
|