Appearance
环境要求
在安装 MineShop 之前,请确保您的服务器满足以下环境要求。
🖥️ 服务器要求
硬件配置
| 环境 | CPU | 内存 | 硬盘 |
|---|---|---|---|
| 开发环境 | 2核 | 4GB | 50GB |
| 测试环境 | 4核 | 8GB | 100GB |
| 生产环境 | 8核+ | 16GB+ | 200GB+ SSD |
操作系统
- 推荐: Linux (Ubuntu 20.04+, CentOS 7+)
- 支持: macOS (开发环境)
- 不推荐: Windows (可使用 WSL2 或 Docker)
📦 软件依赖
PHP 环境
bash
# PHP 版本要求
PHP >= 8.1 (推荐 8.2+)
# 必需扩展
- swoole >= 5.0 (关闭 Short Name)
- mbstring
- json
- pdo
- pdo_mysql
- openssl
- redis
- pcntl
- bcmath
- fileinfo
# 可选扩展
- xlswriter (Excel 高性能导出)检查 PHP 环境
bash
# 查看 PHP 版本
php -v
# 查看已安装扩展
php -m
# 查看 Swoole 信息
php --ri swoole安装 Swoole
bash
# 使用 pecl 安装
pecl install swoole
# 或编译安装
git clone https://github.com/swoole/swoole-src.git
cd swoole-src
phpize
./configure --enable-openssl --enable-http2
make && make install注意
Swoole 必须关闭 Short Name,在 php.ini 中添加:
ini
swoole.use_shortname = OffMySQL 数据库
bash
# 版本要求
MySQL >= 5.7 (推荐 8.0+)
# 或 PostgreSQL >= 10MySQL 配置建议
ini
# my.cnf
[mysqld]
# 字符集
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
# InnoDB 配置
innodb_buffer_pool_size = 1G
innodb_log_file_size = 256M
innodb_flush_log_at_trx_commit = 2
# 连接数
max_connections = 500Redis 缓存
bash
# 版本要求
Redis >= 4.0 (推荐 6.0+)Redis 配置建议
conf
# redis.conf
maxmemory 1gb
maxmemory-policy allkeys-lru
appendonly yesNode.js (前端)
bash
# 版本要求
Node.js >= 16 (推荐 18+)
npm >= 8 或 yarn >= 1.22🐳 Docker 环境
如果使用 Docker,可以跳过上述环境配置,直接使用我们提供的镜像:
yaml
# docker-compose.yml
services:
hyperf:
image: hyperf/hyperf:8.3-alpine-vedge-swoole-v6.1
mysql:
image: mysql:8.0
redis:
image: redis:7.2-alpine✅ 环境检查脚本
创建 check-env.php 文件检查环境:
php
<?php
echo "=== MineShop 环境检查 ===\n\n";
// PHP 版本
$phpVersion = PHP_VERSION;
$phpOk = version_compare($phpVersion, '8.1.0', '>=');
echo "PHP 版本: {$phpVersion} " . ($phpOk ? '✓' : '✗ 需要 >= 8.1') . "\n";
// Swoole 扩展
$swooleLoaded = extension_loaded('swoole');
echo "Swoole 扩展: " . ($swooleLoaded ? '✓ 已安装' : '✗ 未安装') . "\n";
if ($swooleLoaded) {
$swooleVersion = swoole_version();
$swooleOk = version_compare($swooleVersion, '5.0.0', '>=');
echo "Swoole 版本: {$swooleVersion} " . ($swooleOk ? '✓' : '✗ 需要 >= 5.0') . "\n";
}
// 必需扩展
$requiredExtensions = ['mbstring', 'json', 'pdo', 'pdo_mysql', 'openssl', 'redis', 'pcntl', 'bcmath'];
foreach ($requiredExtensions as $ext) {
$loaded = extension_loaded($ext);
echo "{$ext} 扩展: " . ($loaded ? '✓' : '✗') . "\n";
}
echo "\n=== 检查完成 ===\n";运行检查:
bash
php check-env.php🔗 下一步
环境准备就绪后,请继续: