mirror of
https://github.com/shenxn/protonmail-bridge-docker.git
synced 2026-01-18 14:44:41 +01:00
Improve dockerfile
This commit is contained in:
@@ -3,14 +3,13 @@ FROM golang:1.16 AS build
|
||||
# Install dependencies
|
||||
RUN apt-get update && apt-get install -y libsecret-1-dev
|
||||
|
||||
ARG PROTONMAIL_BRIDGE_VERSION
|
||||
|
||||
# Build
|
||||
WORKDIR /build/
|
||||
COPY VERSION /build/
|
||||
|
||||
RUN VERSION=$(cat VERSION) && \
|
||||
curl -L https://github.com/ProtonMail/proton-bridge/archive/refs/tags/${VERSION}.tar.gz \
|
||||
| tar zx --strip-component 1 && \
|
||||
make build-nogui
|
||||
RUN curl -L https://github.com/ProtonMail/proton-bridge/archive/refs/tags/${PROTONMAIL_BRIDGE_VERSION}.tar.gz \
|
||||
| tar zx --strip-component 1
|
||||
RUN make build-nogui
|
||||
|
||||
FROM ubuntu:bionic
|
||||
LABEL maintainer="Xiaonan Shen <s@sxn.dev>"
|
||||
@@ -24,19 +23,20 @@ RUN apt-get update \
|
||||
expect socat pass libsecret-1-0 ca-certificates \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ENV PATH="/srv/protonmail:$PATH"
|
||||
|
||||
# Copy protonmail
|
||||
COPY --from=build /build/proton-bridge/proton-bridge /protonmail/
|
||||
COPY --from=build /build/proton-bridge /srv/protonmail/
|
||||
|
||||
# Copy bash scripts
|
||||
COPY gpgparams entrypoint.sh login.exp /protonmail/
|
||||
COPY gpgparams entrypoint.sh auto-login.exp login.sh /srv/protonmail/
|
||||
|
||||
RUN chmod +x /protonmail/login.exp
|
||||
|
||||
# Add a user 'protonmail' with UID 8535
|
||||
RUN useradd -u 8535 -d /home/protonmail protonmail \
|
||||
&& mkdir -p /home/protonmail \
|
||||
&& chown protonmail: /home/protonmail
|
||||
# change to non-privileged user for extra security
|
||||
# Create use and group for protonmail
|
||||
RUN groupadd --gid 8535 protonmail \
|
||||
&& useradd --uid 8535 --gid 8535 --home-dir /protonmail protonmail \
|
||||
&& mkdir /protonmail \
|
||||
&& chown protonmail:protonmail /protonmail
|
||||
USER protonmail
|
||||
WORKDIR /protonmail
|
||||
|
||||
ENTRYPOINT ["bash", "/protonmail/entrypoint.sh"]
|
||||
ENTRYPOINT ["bash", "/srv/protonmail/entrypoint.sh"]
|
||||
|
||||
Reference in New Issue
Block a user