# # Google Chrome Dockerfile # # https://git.mmbradley.ca/MichaelBradley/docker-chromium/src/branch/google-chrome # # Build the membarrier check tool. FROM alpine:3.14 AS membarrier WORKDIR /tmp COPY membarrier_check.c . RUN apk --no-cache add build-base linux-headers RUN gcc -static -o membarrier_check membarrier_check.c RUN strip membarrier_check # Pull base image. FROM jlesage/baseimage-gui:alpine-3.21-v4.7.1 # Docker image version is provided via build arg. ARG DOCKER_IMAGE_VERSION=v0.1.0 # Define working directory. WORKDIR /tmp # Install extra packages. RUN \ add-pkg \ # WebGL support. mesa-dri-gallium \ # Audio support. libpulse \ # Icons used by folder/file selection window (when saving as). adwaita-icon-theme \ # A font is needed. font-dejavu \ # The following package is used to send key presses to the X process. xdotool # Install Google Chrome through flatpak RUN \ add-pkg flatpak && \ flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo && \ flatpak install -y flathub com.google.Chrome # Add files. COPY rootfs/ / COPY --from=membarrier /tmp/membarrier_check /usr/bin/ # Set internal environment variables. RUN \ set-cont-env APP_NAME "Google Chrome" && \ set-cont-env APP_VERSION "latest" && \ set-cont-env DOCKER_IMAGE_VERSION "$DOCKER_IMAGE_VERSION" && \ true # Metadata. LABEL \ org.label-schema.name="google chrome" \ org.label-schema.description="Docker container for Google Chrome" \ org.label-schema.version="${DOCKER_IMAGE_VERSION:-unknown}" \ org.label-schema.vcs-url="https://git.mmbradley.ca/MichaelBradley/docker-chromium/src/branch/google-chrome" \ org.label-schema.schema-version="1.0"