fix
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)"
|
||||
COMPOSE_FILE="$SCRIPT_DIR/docker-compose.yml"
|
||||
ACCOUNTS_FILE="${ACCOUNTS_FILE:-$SCRIPT_DIR/accounts.txt}"
|
||||
export REPROXY_SSL_DIR="${REPROXY_SSL_DIR:-/Users/vladimir/reproxy/var/ssl}"
|
||||
|
||||
command -v docker >/dev/null || { echo "docker is required" >&2; exit 1; }
|
||||
docker info >/dev/null || { echo "docker access is required" >&2; exit 1; }
|
||||
|
||||
docker network inspect crabs-network >/dev/null 2>&1 || docker network create crabs-network >/dev/null
|
||||
|
||||
CERT="$REPROXY_SSL_DIR/certificates/acme-v02.api.letsencrypt.org-directory/mail.crabs-games.art/mail.crabs-games.art.crt"
|
||||
if [ ! -f "$CERT" ] || ! openssl x509 -in "$CERT" -noout -checkend 2592000 >/dev/null 2>&1; then
|
||||
"$SCRIPT_DIR/setup-mail-tls.sh"
|
||||
fi
|
||||
|
||||
docker compose -f "$COMPOSE_FILE" up -d mailserver
|
||||
|
||||
while IFS= read -r account || [ -n "$account" ]; do
|
||||
[[ -z "$account" || "$account" == \#* ]] && continue
|
||||
if docker exec mailserver setup email list 2>/dev/null | grep -Fq "$account"; then
|
||||
echo "exists: $account"
|
||||
continue
|
||||
fi
|
||||
|
||||
read -r -s -p "Password for $account: " password
|
||||
echo
|
||||
[ -n "$password" ] || { echo "empty password is not allowed" >&2; exit 1; }
|
||||
docker exec mailserver setup email add "$account" "$password"
|
||||
unset password
|
||||
done < "$ACCOUNTS_FILE"
|
||||
|
||||
docker exec mailserver setup config dkim
|
||||
echo "Mail server is running."
|
||||
"$SCRIPT_DIR/check.sh"
|
||||
Reference in New Issue
Block a user