| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- #!/bin/bash
- # -----------------------------------------------------------------------------
- # Naked Environment Deployment Script for Ubuntu 24.04
- # Run this script to seamlessly fully provision the server for the AI Web App.
- # -----------------------------------------------------------------------------
- set -e
- echo "=========================================================="
- echo " Starting Full Environment Deployment for Ubuntu 24.04..."
- echo "=========================================================="
- # 1. Update system packages
- echo ""
- echo "[1/6] Updating APT cache and installing system dependencies (GCC, Python, MySQL Server)..."
- sudo apt update
- sudo apt install -y build-essential gcc python3-venv python3-dev python3-pip curl mysql-server
- # 2. Install Ollama natively
- echo ""
- echo "[2/6] Installing Ollama Engine..."
- curl -fsSL https://ollama.com/install.sh | sh
- # 3. Secure and setup MySQL Server configuration
- echo ""
- echo "[3/6] Configuring MySQL Server settings (Local infile & validation policies)..."
- # We inject the provided my.cnf configuration directly into the MySQL system config
- if [ -f "./my.cnf" ]; then
- sudo cp ./my.cnf /etc/mysql/conf.d/custom_ai_app.cnf
- echo "Custom MySQL configurations applied from my.cnf."
- else
- echo "Warning: my.cnf not found in the current directory."
- fi
- sudo systemctl restart mysql
- echo "MySQL Service restarted."
- # 4. Set up Python Virtual Environment (PEP 668 compliant)
- echo ""
- echo "[4/6] Setting up Python 3 Virtual Environment ('venv')..."
- python3 -m venv venv
- # From here on, we temporarily export the paths to use the new virtual env directly
- export PATH="$PWD/venv/bin:$PATH"
- # 5. Install Required Python Libraries
- echo ""
- echo "[5/6] Installing Python dependencies via pip inside venv..."
- pip install --upgrade pip
- pip install pandas pymysql myloginpath streamlit ollama bcrypt
- echo ""
- echo "=========================================================="
- echo " 🎉 Environment Deployment Complete! "
- echo "=========================================================="
- echo ""
- echo "Next steps:"
- echo "1. Activate your virtual environment manually: source venv/bin/activate"
- echo "2. Check your config.ini file details."
- echo "3. Run your setup script to configure database users: python setup_db.py"
|