add generate new tls host cert
Build and Push Docker Container / build-and-push (push) Successful in 5m37s
Check and Autoupdate for ProtonMail Bridge / check-update (push) Successful in 17s

This commit is contained in:
GitHub Actions
2026-03-11 16:12:46 +01:00
parent dbf81b43a8
commit 49e4d6c536
5 changed files with 24 additions and 1 deletions
+1 -1
View File
@@ -32,7 +32,7 @@ jobs:
- name: Build and push Docker image - name: Build and push Docker image
uses: docker/build-push-action@v7 uses: docker/build-push-action@v7
with: with:
context: ./build context: .
push: true push: true
tags: | tags: |
${{ vars.DOCKER_REGISTRY_URL }}/${{ env.REPO_OWNER_LC }}/protonmail-bridge:latest ${{ vars.DOCKER_REGISTRY_URL }}/${{ env.REPO_OWNER_LC }}/protonmail-bridge:latest
+1
View File
@@ -32,6 +32,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
# Copy bash scripts # Copy bash scripts
COPY gpgparams entrypoint.sh /protonmail/ COPY gpgparams entrypoint.sh /protonmail/
COPY scripts/generate_new_certs.sh /root/generate_new_certs.sh
WORKDIR /protonmail/ WORKDIR /protonmail/
# Copy protonmail # Copy protonmail
View File
+22
View File
@@ -0,0 +1,22 @@
#!/bin/sh
if [ -z "$1" ]; then
echo "Please add the hostname of the Docker Container Name where the Container Should Create a Cert for"
echo "like: $0 protonmail-bridge"
exit 1
fi
# 1. choose the hostname(s) you will actually type into your mail client
HOSTS="$1,localhost,127.0.0.1"
# 2. build the openssl SAN string automatically
SAN=$(echo "$HOSTS" | tr ',' '\n' \
| sed -e 's/^[0-9.]*$/IP:&/' -e 's/^[^0-9.]*$/DNS:&/' \
| paste -sd,)
# 3. generate key + cert in one shot
openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 3650 \
-out cert.pem -subj '/CN=protonmail-bridge' \
-addext "subjectAltName=$SAN"
# 4. quick sanity-check
openssl x509 -in cert.pem -text -noout | grep -A1 "Subject Alternative"