25 lines
664 B
Bash
25 lines
664 B
Bash
#!/bin/bash
|
|
set -e
|
|
|
|
CERT_DIR="/etc/nginx/ssl"
|
|
CERT_FILE="$CERT_DIR/server.crt"
|
|
KEY_FILE="$CERT_DIR/server.key"
|
|
|
|
mkdir -p "$CERT_DIR"
|
|
|
|
if [ ! -f "$CERT_FILE" ] || [ ! -f "$KEY_FILE" ]; then
|
|
echo "Generating self-signed SSL certificate..."
|
|
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
|
|
-keyout "$KEY_FILE" \
|
|
-out "$CERT_FILE" \
|
|
-subj "/C=HK/ST=HongKong/L=HongKong/O=LegCoReranker/CN=localhost" \
|
|
-addext "subjectAltName=DNS:localhost,IP:127.0.0.1"
|
|
echo "Self-signed certificate generated."
|
|
fi
|
|
|
|
echo "Starting nginx..."
|
|
nginx
|
|
|
|
echo "Starting uvicorn..."
|
|
exec tini -- uvicorn app.main:app --host 0.0.0.0 --port 8000
|