forked from Mouws/protonmail-bridge-nextcoud-podman
First version
This commit is contained in:
parent
0ab6aa5b22
commit
b801041c7f
7
.gitignore
vendored
Normal file
7
.gitignore
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
*
|
||||||
|
|
||||||
|
!.gitignore
|
||||||
|
!LICENSE
|
||||||
|
!*.sh
|
||||||
|
!gpgparams
|
||||||
|
!Dockerfile
|
||||||
26
Dockerfile
Normal file
26
Dockerfile
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
FROM debian:buster-slim
|
||||||
|
LABEL maintainer="Xiaonan Shen <s@sxn.dev>"
|
||||||
|
|
||||||
|
EXPOSE 25/tcp
|
||||||
|
EXPOSE 143/tcp
|
||||||
|
ENV DEB_URL https://protonmail.com/download/protonmail-bridge_1.2.6-1_amd64.deb
|
||||||
|
WORKDIR /root
|
||||||
|
|
||||||
|
# Copy gpg parameters and .deb installer
|
||||||
|
COPY gpgparams /protonmail/
|
||||||
|
|
||||||
|
# Install dependencies and protonmail bridge
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y --no-install-recommends socat pass \
|
||||||
|
&& apt-get install -y wget \
|
||||||
|
&& wget -O /protonmail/protonmail.deb ${DEB_URL} \
|
||||||
|
&& apt-get install -y --no-install-recommends /protonmail/protonmail.deb \
|
||||||
|
&& apt-get purge -y wget \
|
||||||
|
&& apt-get autoremove -y \
|
||||||
|
&& rm -rf /var/lib/apt/lists/* \
|
||||||
|
&& rm /protonmail/protonmail.deb
|
||||||
|
|
||||||
|
COPY entrypoint.sh /bin/
|
||||||
|
RUN chmod +x /bin/entrypoint.sh
|
||||||
|
|
||||||
|
ENTRYPOINT ["/bin/entrypoint.sh"]
|
||||||
49
entrypoint.sh
Normal file
49
entrypoint.sh
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Initialize
|
||||||
|
if [[ $1 == init ]]; then
|
||||||
|
|
||||||
|
# # Parse parameters
|
||||||
|
# TFP="" # Default empty two factor passcode
|
||||||
|
# shift # skip `init`
|
||||||
|
# while [[ $# -gt 0 ]]; do
|
||||||
|
# key="$1"
|
||||||
|
# case $key in
|
||||||
|
# -u|--username)
|
||||||
|
# USERNAME="$2"
|
||||||
|
# ;;
|
||||||
|
# -p|--password)
|
||||||
|
# PASSWORD="$2"
|
||||||
|
# ;;
|
||||||
|
# -t|--twofactor)
|
||||||
|
# TWOFACTOR="$2"
|
||||||
|
# ;;
|
||||||
|
# esac
|
||||||
|
# shift
|
||||||
|
# shift
|
||||||
|
# done
|
||||||
|
|
||||||
|
# Initialize pass
|
||||||
|
gpg --generate-key --batch /protonmail/gpgparams
|
||||||
|
pass init pass-key
|
||||||
|
|
||||||
|
# Login
|
||||||
|
protonmail-bridge --cli
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
# socat will make the conn appear to come from 127.0.0.1
|
||||||
|
# ProtonMail Bridge currently expects that.
|
||||||
|
# It also allows us to bind to the real ports :)
|
||||||
|
socat TCP-LISTEN:25,fork TCP:127.0.0.1:1025 &
|
||||||
|
socat TCP-LISTEN:143,fork TCP:127.0.0.1:1143 &
|
||||||
|
|
||||||
|
# Start protonmail
|
||||||
|
# Fake a terminal, so it does not quit because of EOF...
|
||||||
|
rm -f faketty
|
||||||
|
mkfifo faketty
|
||||||
|
cat faketty | protonmail-bridge --cli
|
||||||
|
|
||||||
|
fi
|
||||||
Loading…
Reference in New Issue
Block a user