| FROM golang:1.21-bullseye |
|
|
| ENV DEBIAN_FRONTEND=noninteractive |
|
|
| |
| RUN apt-get update && apt-get install -y \ |
| xvfb x11-utils x11-xserver-utils xdotool matchbox-window-manager \ |
| ffmpeg curl gnupg libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 \ |
| libdrm2 libxkbcommon0 libxcomposite1 libxdamage1 libxrandr2 libgbm1 \ |
| libasound2 fonts-liberation fonts-noto-color-emoji \ |
| && rm -rf /var/lib/apt/lists/* |
|
|
| |
| RUN curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg \ |
| https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg && \ |
| echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg] https://brave-browser-apt-release.s3.brave.com/ stable main" \ |
| | tee /etc/apt/sources.list.d/brave-browser-release.list && \ |
| apt-get update && apt-get install -y brave-browser && \ |
| rm -rf /var/lib/apt/lists/* |
|
|
| |
| RUN useradd -m -u 1000 user |
| USER user |
| ENV HOME=/home/user \ |
| PATH=/home/user/.local/bin:$PATH |
| WORKDIR $HOME/app |
|
|
| |
| COPY --chown=user:user go.mod . |
| |
| COPY --chown=user:user main.go . |
| RUN go mod tidy |
| RUN go build -o server main.go |
|
|
| |
| ENV DISPLAY=:99 |
| EXPOSE 7860 |
|
|
| CMD ["./server"] |