- Added VITE_SOCKET_URL to docker-compose.yml for WebSocket connection. - Updated update-docker-env.sh to handle SSL options for WebSocket URLs. - Modified Dockerfile to include VITE_SOCKET_URL in env-config.js. - Implemented getSocketUrl function in frontend to retrieve WebSocket URL. - Refactored socket configuration to use centralized socket URL from environment settings.
50 lines
1.2 KiB
Bash
Executable File
50 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Script to set environment variables for Docker deployment
|
|
# Usage: ./update-docker-env.sh [hostname] [use_ssl]
|
|
|
|
# Default hostname if not provided
|
|
DEFAULT_HOSTNAME="localhost"
|
|
HOSTNAME=${1:-$DEFAULT_HOSTNAME}
|
|
|
|
# Check if SSL should be used
|
|
USE_SSL=${2:-false}
|
|
|
|
# Set protocol prefixes based on SSL flag
|
|
if [ "$USE_SSL" = "true" ]; then
|
|
HTTP_PREFIX="https://"
|
|
WS_PREFIX="wss://"
|
|
else
|
|
HTTP_PREFIX="http://"
|
|
WS_PREFIX="ws://"
|
|
fi
|
|
|
|
# Create or update root .env file
|
|
cat > .env << EOL
|
|
# Frontend Configuration
|
|
VITE_API_URL=${HTTP_PREFIX}${HOSTNAME}:3000
|
|
VITE_SOCKET_URL=${WS_PREFIX}${HOSTNAME}:3000
|
|
|
|
# Backend Configuration
|
|
DB_HOST=db
|
|
DB_PORT=5432
|
|
DB_USER=postgres
|
|
DB_PASSWORD=password
|
|
DB_NAME=worklenz_db
|
|
NODE_ENV=development
|
|
PORT=3000
|
|
|
|
# Storage Configuration
|
|
AWS_REGION=us-east-1
|
|
STORAGE_PROVIDER=s3
|
|
BUCKET=worklenz-bucket
|
|
S3_ACCESS_KEY_ID=minioadmin
|
|
S3_SECRET_ACCESS_KEY=minioadmin
|
|
S3_URL=http://minio:9000
|
|
EOL
|
|
|
|
echo "Environment configuration updated for ${HOSTNAME} with" $([ "$USE_SSL" = "true" ] && echo "HTTPS/WSS" || echo "HTTP/WS")
|
|
echo "To run with Docker Compose, use: docker-compose up -d"
|
|
echo
|
|
echo "API URL: ${VITE_API_URL:-${HTTP_PREFIX}${HOSTNAME}:3000}"
|
|
echo "Socket URL: ${VITE_SOCKET_URL:-${WS_PREFIX}${HOSTNAME}:3000}" |