mirror of
https://github.com/lkddi/Xboard.git
synced 2026-04-24 20:17:32 +08:00
update docs
This commit is contained in:
@@ -71,7 +71,7 @@ git clone -b compose --depth 1 https://github.com/cedar2025/Xboard ./
|
||||
```yaml
|
||||
services:
|
||||
web:
|
||||
image: ghcr.io/cedar2025/xboard:latest
|
||||
image: ghcr.io/cedar2025/xboard:new
|
||||
volumes:
|
||||
- ./.docker/.data/redis/:/data/
|
||||
- ./.env:/www/.env
|
||||
@@ -90,7 +90,7 @@ services:
|
||||
- 1panel-network
|
||||
|
||||
horizon:
|
||||
image: ghcr.io/cedar2025/xboard:latest
|
||||
image: ghcr.io/cedar2025/xboard:new
|
||||
volumes:
|
||||
- ./.docker/.data/redis/:/data/
|
||||
- ./.env:/www/.env
|
||||
|
||||
@@ -0,0 +1,137 @@
|
||||
# Xboard Deployment Guide for aaPanel + Docker Environment
|
||||
|
||||
## Table of Contents
|
||||
1. [Requirements](#requirements)
|
||||
2. [Quick Deployment](#quick-deployment)
|
||||
3. [Detailed Configuration](#detailed-configuration)
|
||||
4. [Maintenance Guide](#maintenance-guide)
|
||||
5. [Troubleshooting](#troubleshooting)
|
||||
|
||||
## Requirements
|
||||
|
||||
### Hardware Requirements
|
||||
- CPU: 1 core or above
|
||||
- Memory: 2GB or above
|
||||
- Storage: 10GB+ available space
|
||||
|
||||
### Software Requirements
|
||||
- Operating System: Ubuntu 20.04+ / CentOS 7+ / Debian 10+
|
||||
- Latest version of aaPanel
|
||||
- Docker and Docker Compose
|
||||
- Nginx (any version)
|
||||
- MySQL 5.7+
|
||||
|
||||
## Quick Deployment
|
||||
|
||||
### 1. Install aaPanel
|
||||
```bash
|
||||
curl -sSL https://www.aapanel.com/script/install_6.0_en.sh -o install_6.0_en.sh && \
|
||||
bash install_6.0_en.sh aapanel
|
||||
```
|
||||
|
||||
### 2. Basic Environment Setup
|
||||
|
||||
#### 2.1 Install Docker
|
||||
```bash
|
||||
# Install Docker
|
||||
curl -sSL https://get.docker.com | bash
|
||||
|
||||
# For CentOS systems, also run:
|
||||
systemctl enable docker
|
||||
systemctl start docker
|
||||
```
|
||||
|
||||
#### 2.2 Install Required Components
|
||||
In the aaPanel dashboard, install:
|
||||
- Nginx (any version)
|
||||
- MySQL 5.7
|
||||
- ⚠️ PHP and Redis are not required
|
||||
|
||||
### 3. Site Configuration
|
||||
|
||||
#### 3.1 Create Website
|
||||
1. Navigate to: aaPanel > Website > Add site
|
||||
2. Fill in the information:
|
||||
- Domain: Enter your site domain
|
||||
- Database: Select MySQL
|
||||
- PHP Version: Select Pure Static
|
||||
|
||||
#### 3.2 Deploy Xboard
|
||||
```bash
|
||||
# Enter site directory
|
||||
cd /www/wwwroot/your-domain
|
||||
|
||||
# Clean directory
|
||||
chattr -i .user.ini
|
||||
rm -rf .htaccess 404.html 502.html index.html .user.ini
|
||||
|
||||
# Clone repository
|
||||
git clone https://github.com/cedar2025/Xboard.git ./
|
||||
|
||||
# Prepare configuration file
|
||||
cp compose.sample.yaml compose.yaml
|
||||
|
||||
# Install dependencies and initialize
|
||||
docker compose run -it --rm web sh init.sh
|
||||
```
|
||||
> ⚠️ Please save the admin dashboard URL, username, and password shown after installation
|
||||
|
||||
#### 3.3 Start Services
|
||||
```bash
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
#### 3.4 Configure Reverse Proxy
|
||||
Add the following content to your site configuration:
|
||||
```nginx
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:7001;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Connection "";
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Real-PORT $remote_port;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_set_header Scheme $scheme;
|
||||
proxy_set_header Server-Protocol $server_protocol;
|
||||
proxy_set_header Server-Name $server_name;
|
||||
proxy_set_header Server-Addr $server_addr;
|
||||
proxy_set_header Server-Port $server_port;
|
||||
proxy_cache off;
|
||||
}
|
||||
```
|
||||
|
||||
## Maintenance Guide
|
||||
|
||||
### Version Updates
|
||||
|
||||
> 💡 Important Note: Update commands may vary depending on your installed version:
|
||||
> - For recent installations (new version), use:
|
||||
```bash
|
||||
docker compose pull && \
|
||||
docker compose run -it --rm web sh update.sh && \
|
||||
docker compose up -d
|
||||
```
|
||||
> - For older installations, replace `web` with `xboard`:
|
||||
```bash
|
||||
git config --global --add safe.directory $(pwd)
|
||||
git fetch --all && git reset --hard origin/master && git pull origin master
|
||||
docker compose pull && \
|
||||
docker compose run -it --rm xboard sh update.sh && \
|
||||
docker compose up -d
|
||||
```
|
||||
> 🤔 Not sure which to use? Try the new version command first, if it fails, use the old version command.
|
||||
|
||||
### Routine Maintenance
|
||||
- Regular log checking: `docker compose logs`
|
||||
- Monitor system resource usage
|
||||
- Regular backup of database and configuration files
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
If you encounter any issues during installation or operation, please check:
|
||||
1. System requirements are met
|
||||
2. All required ports are available
|
||||
3. Docker services are running properly
|
||||
4. Nginx configuration is correct
|
||||
5. Check logs for detailed error messages
|
||||
@@ -0,0 +1,173 @@
|
||||
# Xboard Deployment Guide for aaPanel Environment
|
||||
|
||||
## Table of Contents
|
||||
1. [Requirements](#requirements)
|
||||
2. [Quick Deployment](#quick-deployment)
|
||||
3. [Detailed Configuration](#detailed-configuration)
|
||||
4. [Maintenance Guide](#maintenance-guide)
|
||||
5. [Troubleshooting](#troubleshooting)
|
||||
|
||||
## Requirements
|
||||
|
||||
### Hardware Requirements
|
||||
- CPU: 1 core or above
|
||||
- Memory: 2GB or above
|
||||
- Storage: 10GB+ available space
|
||||
|
||||
### Software Requirements
|
||||
- Operating System: Ubuntu 20.04+ / Debian 10+ (⚠️ CentOS 7 is not recommended)
|
||||
- Latest version of aaPanel
|
||||
- PHP 8.2
|
||||
- MySQL 5.7+
|
||||
- Redis
|
||||
- Nginx (any version)
|
||||
|
||||
## Quick Deployment
|
||||
|
||||
### 1. Install aaPanel
|
||||
```bash
|
||||
URL=https://www.aapanel.com/script/install_6.0_en.sh && \
|
||||
if [ -f /usr/bin/curl ];then curl -ksSO "$URL" ;else wget --no-check-certificate -O install_6.0_en.sh "$URL";fi && \
|
||||
bash install_6.0_en.sh aapanel
|
||||
```
|
||||
|
||||
### 2. Basic Environment Setup
|
||||
|
||||
#### 2.1 Install LNMP Environment
|
||||
In the aaPanel dashboard, install:
|
||||
- Nginx (any version)
|
||||
- MySQL 5.7
|
||||
- PHP 8.2
|
||||
|
||||
#### 2.2 Install PHP Extensions
|
||||
Required PHP extensions:
|
||||
- redis
|
||||
- fileinfo
|
||||
- swoole4
|
||||
- readline
|
||||
- event
|
||||
|
||||
#### 2.3 Enable Required PHP Functions
|
||||
Functions that need to be enabled:
|
||||
- putenv
|
||||
- proc_open
|
||||
- pcntl_alarm
|
||||
- pcntl_signal
|
||||
|
||||
### 3. Site Configuration
|
||||
|
||||
#### 3.1 Create Website
|
||||
1. Navigate to: aaPanel > Website > Add site
|
||||
2. Fill in the information:
|
||||
- Domain: Enter your site domain
|
||||
- Database: Select MySQL
|
||||
- PHP Version: Select 8.2
|
||||
|
||||
#### 3.2 Deploy Xboard
|
||||
```bash
|
||||
# Enter site directory
|
||||
cd /www/wwwroot/your-domain
|
||||
|
||||
# Clean directory
|
||||
chattr -i .user.ini
|
||||
rm -rf .htaccess 404.html 502.html index.html .user.ini
|
||||
|
||||
# Clone repository
|
||||
git clone https://github.com/cedar2025/Xboard.git ./
|
||||
|
||||
# Install dependencies
|
||||
sh init.sh
|
||||
```
|
||||
|
||||
#### 3.3 Configure Site
|
||||
1. Set running directory to `/public`
|
||||
2. Add rewrite rules:
|
||||
```nginx
|
||||
location /downloads {
|
||||
}
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.php$is_args$query_string;
|
||||
}
|
||||
|
||||
location ~ .*\.(js|css)?$
|
||||
{
|
||||
expires 1h;
|
||||
error_log off;
|
||||
access_log /dev/null;
|
||||
}
|
||||
```
|
||||
|
||||
## Detailed Configuration
|
||||
|
||||
### 1. Configure Daemon Process
|
||||
1. Install Supervisor
|
||||
2. Add queue daemon process:
|
||||
- Name: `Xboard`
|
||||
- Run User: `www`
|
||||
- Running Directory: Site directory
|
||||
- Start Command: `php artisan horizon`
|
||||
- Process Count: 1
|
||||
|
||||
### 2. Configure Scheduled Tasks
|
||||
- Type: Shell Script
|
||||
- Task Name: v2board
|
||||
- Frequency: 1 minute
|
||||
- Script Content: `php /www/wwwroot/site-directory/artisan schedule:run`
|
||||
|
||||
### 3. Octane Configuration (Optional)
|
||||
#### 3.1 Add Octane Daemon Process
|
||||
- Name: Octane
|
||||
- Run User: www
|
||||
- Running Directory: Site directory
|
||||
- Start Command: `/www/server/php/81/bin/php artisan octane:start --port 7010`
|
||||
- Process Count: 1
|
||||
|
||||
#### 3.2 Octane-specific Rewrite Rules
|
||||
```nginx
|
||||
location ~* \.(jpg|jpeg|png|gif|js|css|svg|woff2|woff|ttf|eot|wasm|json|ico)$ {
|
||||
}
|
||||
|
||||
location ~ .* {
|
||||
proxy_pass http://127.0.0.1:7010;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Connection "";
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Real-PORT $remote_port;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_set_header Scheme $scheme;
|
||||
proxy_set_header Server-Protocol $server_protocol;
|
||||
proxy_set_header Server-Name $server_name;
|
||||
proxy_set_header Server-Addr $server_addr;
|
||||
proxy_set_header Server-Port $server_port;
|
||||
}
|
||||
```
|
||||
|
||||
## Maintenance Guide
|
||||
|
||||
### Version Updates
|
||||
```bash
|
||||
# Enter site directory
|
||||
cd /www/wwwroot/your-domain
|
||||
|
||||
# Execute update script
|
||||
git fetch --all && git reset --hard origin/master && git pull origin master
|
||||
sh update.sh
|
||||
|
||||
# If Octane is enabled, restart the daemon process
|
||||
# aaPanel > App Store > Tools > Supervisor > Restart Octane
|
||||
```
|
||||
|
||||
### Routine Maintenance
|
||||
- Regular log checking
|
||||
- Monitor system resource usage
|
||||
- Regular backup of database and configuration files
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Common Issues
|
||||
1. Changes to admin path require service restart to take effect
|
||||
2. Any code changes after enabling Octane require restart to take effect
|
||||
3. When PHP extension installation fails, check if PHP version is correct
|
||||
4. For database connection failures, check database configuration and permissions
|
||||
@@ -0,0 +1,77 @@
|
||||
# Quick Deployment Guide with Docker Compose
|
||||
|
||||
This guide explains how to quickly deploy Xboard using Docker Compose. By default, it uses SQLite database, eliminating the need for a separate MySQL installation.
|
||||
|
||||
### 1. Environment Preparation
|
||||
|
||||
Install Docker:
|
||||
```bash
|
||||
curl -sSL https://get.docker.com | bash
|
||||
|
||||
# For CentOS systems, also run:
|
||||
systemctl enable docker
|
||||
systemctl start docker
|
||||
```
|
||||
|
||||
### 2. Deployment Steps
|
||||
|
||||
1. Get project files:
|
||||
```bash
|
||||
git clone -b compose --depth 1 https://github.com/cedar2025/Xboard
|
||||
cd Xboard
|
||||
```
|
||||
|
||||
2. Install database:
|
||||
|
||||
- Quick installation (Recommended for beginners)
|
||||
```bash
|
||||
docker compose run -it --rm \
|
||||
-e ENABLE_SQLITE=true \
|
||||
-e ENABLE_REDIS=true \
|
||||
-e ADMIN_ACCOUNT=admin@demo.com \
|
||||
web php artisan xboard:install
|
||||
```
|
||||
- Custom configuration installation (Advanced users)
|
||||
```bash
|
||||
docker compose run -it --rm web php artisan xboard:install
|
||||
```
|
||||
> Please save the admin dashboard URL, username, and password shown after installation
|
||||
|
||||
3. Start services:
|
||||
```bash
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
4. Access the site:
|
||||
- Default port: 7001
|
||||
- Website URL: http://your-server-ip:7001
|
||||
|
||||
### 3. Version Updates
|
||||
|
||||
> 💡 Important Note: Update commands may vary depending on your installed version:
|
||||
> - For recent installations (new version), use:
|
||||
```bash
|
||||
cd Xboard
|
||||
docker compose pull && \
|
||||
docker compose run -it --rm web php artisan xboard:update && \
|
||||
docker compose up -d
|
||||
```
|
||||
> - For older installations, replace `web` with `xboard`:
|
||||
```bash
|
||||
cd Xboard
|
||||
docker compose pull && \
|
||||
docker compose run -it --rm xboard php artisan xboard:update && \
|
||||
docker compose up -d
|
||||
```
|
||||
> 🤔 Not sure which to use? Try the new version command first, if it fails, use the old version command.
|
||||
|
||||
### 4. Version Rollback
|
||||
|
||||
1. Modify the version number in `docker-compose.yaml` to the version you want to roll back to
|
||||
2. Execute: `docker compose up -d`
|
||||
|
||||
### Important Notes
|
||||
|
||||
- If you need to use MySQL, please install it separately and redeploy
|
||||
- Code changes require service restart to take effect
|
||||
- You can configure Nginx reverse proxy to use port 80
|
||||
Reference in New Issue
Block a user