Skip to content

Commit 33e90d7

Browse files
author
Egor
committed
Add SSL support for Cloudflare Full mode compatibility
1 parent 199f058 commit 33e90d7

1 file changed

Lines changed: 23 additions & 1 deletion

File tree

.github/workflows/deploy-vbrl.yml

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ jobs:
6464
6565
# Configure environment variables
6666
echo "Creating .env file..."
67-
echo "PORT=80" > .env
67+
echo "PORT=443" > .env
6868
echo "HOST=0.0.0.0" >> .env
6969
echo "MONGO_URI=mongodb://mongodb:27017/LibreChat" >> .env
7070
echo "DOMAIN=libre.vbrl.ai" >> .env
@@ -90,10 +90,32 @@ jobs:
9090
echo "ALLOW_UNVERIFIED_EMAIL_LOGIN=true" >> .env
9191
echo "UID=0" >> .env
9292
echo "GID=0" >> .env
93+
echo "HTTPS=true" >> .env
94+
echo "HTTPS_CERT_PATH=/app/certs/cert.pem" >> .env
95+
echo "HTTPS_KEY_PATH=/app/certs/key.pem" >> .env
9396
echo "Environment file created successfully."
9497
98+
# Create SSL certificates directory if it doesn't exist
99+
mkdir -p ~/LibreChat/certs
100+
101+
# Generate self-signed SSL certificate if it doesn't exist
102+
if [ ! -f ~/LibreChat/certs/cert.pem ] || [ ! -f ~/LibreChat/certs/key.pem ]; then
103+
echo "Generating self-signed SSL certificate..."
104+
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
105+
-keyout ~/LibreChat/certs/key.pem \
106+
-out ~/LibreChat/certs/cert.pem \
107+
-subj '/CN=libre.vbrl.ai'
108+
sudo chown -R ubuntu:ubuntu ~/LibreChat/certs
109+
fi
110+
95111
# Cloudflare is already handling SSL and domain routing, no need for Nginx
96112
113+
# Update docker-compose.yml to mount certificates
114+
echo "Updating docker-compose.yml to mount certificates..."
115+
if ! grep -q "./certs:/app/certs" ~/LibreChat/docker-compose.yml; then
116+
sed -i '/- .\/logs:\/app\/api\/logs/a\\ - .\/certs:\/app\/certs' ~/LibreChat/docker-compose.yml
117+
fi
118+
97119
# Deploy with Docker Compose
98120
echo "Deploying with Docker Compose..."
99121
cd ~/LibreChat

0 commit comments

Comments
 (0)