如何将Ubuntu系统部署Pandawiki智能知识库?

摘要:一、系统环境准备 bash # 更新系统 sudo apt update && sudo apt upgrade -y sudo apt install -y git python3-pip
一、系统环境准备 bash # 更新系统 sudo apt update && sudo apt upgrade -y sudo apt install -y git python3-pip python3-venv nginx ufw certbot # 安装PostgreSQL数据库 sudo apt install -y postgresql postgresql-contrib sudo -u postgres psql -c "CREATE DATABASE pandawiki;" sudo -u postgres psql -c "CREATE USER wikiadmin WITH PASSWORD 'YourStrongPassword!';" sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE pandawiki TO wikiadmin;" # 创建应用目录 mkdir -p /opt/pandawiki && cd /opt/pandawiki
二、Pandawiki部署流程 1. 获取源代码 bash git clone https://github.com/pandawiki/pandawiki.git cd pandawiki # 创建虚拟环境 python3 -m venv venv source venv/bin/activate 2. 安装依赖 bash pip install --upgrade pip pip install -r requirements.txt pip install gunicorn gevent psycopg2-binary 3. 配置应用 bash # 创建配置文件 cp config.example.py config.py nano config.py python # 关键配置修改 SQLALCHEMY_DATABASE_URI = 'postgresql+psycopg2://wikiadmin:YourStrongPassword!@localhost/pandawiki' SECRET_KEY = '生成32位密钥(openssl rand -hex 32)' ALLOW_REGISTRATION = False # 生产环境禁用开放注册 UPLOAD_FOLDER = '/opt/pandawiki/uploads' # 上传目录 4. 初始化数据库 bash flask db upgrade flask init-data # 创建上传目录 sudo mkdir -p /opt/pandawiki/uploads sudo chown -R $USER:$USER /opt/pandawiki 5. 测试运行 bash gunicorn --bind 0.0.0.0:8000 app:app # 访问 http://<服务器IP>:8000 验证
三、生产环境部署 1. 创建系统服务 bash sudo nano /etc/systemd/system/pandawiki.service ini [Unit] Description=Pandawiki Gunicorn Service After=network.target postgresql.service [Service] User=ubuntu Group=www-data WorkingDirectory=/opt/pandawiki/pandawiki Environment="PATH=/opt/pandawiki/pandawiki/venv/bin" ExecStart=/opt/pandawiki/pandawiki/venv/bin/gunicorn \ --worker-class gevent \ --workers 5 \ --bind unix:/run/pandawiki.sock \ --timeout 300 \ --log-level warning \ app:app Restart=always RestartSec=3 [Install] WantedBy=multi-user.target ba
阅读全文