Compare commits

...

3 Commits

Author SHA1 Message Date
drunkendog e8ef040f2b Add scripts/minio/install-second-vhost.py 2023-12-20 23:50:56 +00:00
drunkendog 20ec385cd8 Make email/cache_email optional 2023-12-20 23:48:14 +00:00
drunkendog d848290237 Add scripts/minio/nginx-api-proxy-template.conf 2023-12-20 23:45:30 +00:00
3 changed files with 77 additions and 2 deletions

View File

@ -0,0 +1,44 @@
import os
import argparse
import warnings
def get_cached_email() -> str:
with open("../email.cache", "r") as f:
email = f.read().strip()
return email
def cache_email(email: str) -> None:
try:
with open("../email.cache", "w") as f:
f.write(email)
except Exception as e:
warnings.warn(e, Warning)
parser = argparse.ArgumentParser()
parser.add_argument("domain")
parser.add_argument("email", nargs='?', default=None) # to not recache emails retreived from cache
parser.add_argument("cache_email", nargs='?', default=True)
args = parser.parse_args()
if args.cache_email is True and args.email is not None:
cache_email(args.email)
if args.email is None:
args.email = get_cached_email()
os.makedirs(os.path.dirname("/opt/quick-recover/"), exist_ok=True)
with open("/opt/quick-recover/minio-api.conf", "w") as f:
f.write(f"export DOMAIN='{args.domain}'\n")
f.write(f"export EMAIL='{args.email}'\n")
with open("nginx-api-proxy-template.conf", "r") as f:
template = f.read().replace("#serverNameVar", f"{args.domain}")
with open("/etc/nginx/sites-available/minio-api.conf", "w") as f:
f.write(template)
os.system(f"sh ../getcert.sh {args.domain} {args.email}")
os.system("sh ../nginx-ensite.sh minio-api")

View File

@ -0,0 +1,31 @@
server {
listen 443;
server_name #serverNameVar;
ssl on;
ssl_certificate /etc/letsencrypt/live/#serverNameVar/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/#serverNameVar/privkey.pem;
location / {
proxy_pass http://172.30.26.1:9000/;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_connect_timeout 300;
# Default is HTTP/1, keepalive is only enabled in HTTP/1.1
proxy_http_version 1.1;
proxy_set_header Connection "";
chunked_transfer_encoding off;
}
}
server {
listen 80;
server_name #serverNameVar;
location / {
return 301 https://#serverNameVar$request_uri;
}
}

View File

@ -22,8 +22,8 @@ def cache_email(email: str) -> None:
#PARSE_ARGS
parser = argparse.ArgumentParser()
parser.add_argument("domain")
parser.add_argument("email", default=None) # to not recache emails retreived from cache
parser.add_argument("cache_email", default=True)
parser.add_argument("email", nargs='?', default=None) # to not recache emails retreived from cache
parser.add_argument("cache_email", nargs='?', default=True)
args = parser.parse_args()
#CACHE