手动部署
先决条件
git:用于管理版本,部署和升级必要工具。
PHP:仅支持 PHP8.1。
composer:PHP 的包管理工具,用于安装必要的依赖包。
MySQL 5.7:数据库引擎,理论上 MariaDB 10.2 + 兼容支持。
ext-zip:扩展。
ext-json:扩展。
ext-fileinfo:扩展。
ext-ldap:扩展。
ext-bcmath:扩展。
ext-mysqli:扩展。
ext-xml:扩展。
ext-xmlrpc:扩展。
以上扩展安装过程注意版本必须与 PHP 版本一致。
安装步骤
生产环境下为遵守安全策略,非常建议在服务器本地进行部署,暂时不提供相关线上初始化安装的功能。因此,虽然前期部署的步骤较多,但已经为大家自动化处理了很大部分的流程,只需要跟着下面的命令一步步执行,一般是不会有部署问题的。
- 为你的计算机安装
PHP8.1
环境,参考:PHP官方 。 - 为你的计算机安装
MySQL
或者mariadb
。 - 在你想要的地方,执行
mkdir chemex && cd chemex
。 - 执行
git clone https://gitee.com/celaraze/chemex.git .
,注意末尾的.
也是需要包含的。 - 执行
git submodule init && git submodule update
。 - 执行
cp .env.example .env
。 - 根据
.env
文件中注释的指引进行配置。 - 执行
composer install -vvv
安装依赖。 - 你可能使用的web服务器为
nginx
以及apache
,无论怎样,应用的起始路径在/public
目录,请确保指向正确,同时程序的根目录权限应该调整为:拥有者和你的 Web 服务器运行用户一致,例如 www 用户,且根目录权限为755
。/storage
目录设置为755
权限。/public
目录设置为755
权限。 - 修改web服务器的伪静态规则为:
try_files $uri $uri/ /index.php?$args;
。 - 执行
php artisan chemex:install
。 - 此时可以通过访问
http://your_domain
来使用咖啡壶。管理员账号密码为:admin / admin
。
开始部署
安装PHP8.1
设置apt库
这个库来自于Ondřej Surý,他维护了一个包含了PHP最新版的库。
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
安装
apt install php8.1
安装完成后,
php --version
可以看到版本信息
设置root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
安装mysql
步骤1:更新apt-get包管理器
在安装MySQL之前,应该始终确保apt-get包管理器是最新的版本。
请打开终端应用程序并执行以下命令以更新apt-get。
sudo apt-get update
步骤2:使用apt-get安装MySQL
在Ubuntu中,MySQL服务器由mysql-server软件包提供。执行以下命令安装该软件包:
sudo apt-get install mysql-server
在这个过程中,apt-get将询问您是否要安装mysql-server软件包。
按下Enter键并等待安装过程完成。
步骤3:运行安全性脚本
在安装MySQL后,建议您运行mysql_secure_installation脚本,该脚本将提示您设置root密码,删除匿名用户,禁用root登录远程主机等,可以增加MySQL服务器的安全性。执行以下命令以运行安全性脚本。
sudo mysql_secure_installation
安装过程中,请回答所有提示问题。从安全性角度考虑,建议您设置强密码并删除匿名用户。
步骤4:启动MySQL
要启动MySQL,请执行以下命令:
sudo systemctl start mysql
步骤5:检查MySQL状态
要检查MySQL是否正在运行,请执行以下命令:
sudo systemctl status mysql
如果MySQL正在运行,您将看到“active (running)”消息。
步骤6:设置MySQL自动启动
在Ubuntu操作系统上,MySQL服务器默认没有在启动时自动启动。执行以下命令使MySQL在启动时自动启动。
sudo systemctl enable mysql
到此为止,您已经成功地在Ubuntu系统上安装并配置了MySQL数据库
安装
1.建立文件夹
mkdir chemex && cd chemex
2.克隆
git clone https://gitee.com/celaraze/chemex.git .
注意末尾的 . 也是需要包含的。
3.
git submodule init && git submodule update
4.拷贝一份 .env.example为 .env
cp .env.example .env
下面是.env内容 下载不下来的自己建立 从#欢迎开始
##################下面是.env内容 下载不下来的自己建立 不复制#################
# 欢迎使用 chemex,在您开始之前,请按照指引完成配置
# 基础配置:
### 第一步:数据库配置
#数据库类型,不需要修改(兼容mariadb)
DB_CONNECTION=mysql
# 数据库地址
DB_HOST=127.0.0.1
# 数据库端口号,mysql默认是3306
DB_PORT=3306
# 数据库名称,如果没有此数据库,后续会提示创建
DB_DATABASE=chemex
# 数据库用户名
DB_USERNAME=root
# 数据库密码
DB_PASSWORD=password
### 第二步:配置HTTPS
### 如果您使用HTTPS协议,请将下面两个参数修改为true
ADMIN_HTTPS=false
### 第三步:配置应用信息
# 应用名称,一般不需要修改
APP_NAME=chemex
APP_ENV=local
# 修改默认应用地址和站点配置中地址相同配合上传LOGO使用,在站点配置中设置站点地址!
APP_URL=http://127.0.0.1:8000
### 第四步:执行安装命令
# 在项目根目录中执行 php artisan chemex:install
# 高级配置:
# 应用密钥,可以通过执行 php artisan key:generate 重新生成
# 此项影响用户密码,一旦修改,既有的密码将全部失效,请谨慎修改
APP_KEY=base64:aRpYlARLPcqF3VlZ6jrT1vUX4aWzG0xFYriKzLO3zqE=
# 是否开启 DEBUG 模式
# 开启后如果程序出错,将会抛出异常
# 关闭后如果程序出错,将只会给出 HTTP 错误码 500
APP_DEBUG=true
LOG_CHANNEL=stack
BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
REDIS_HOST=redis
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_MAILER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=null
MAIL_FROM_NAME="${APP_NAME}"
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
# 决定了此实例是否以demo运行(部分权限受阻)
ADMIN_DEMO=false
##########################不复制##########################################
配置.env
配置
安装依赖
apt install composer
composer install -vvv
安装
php artisan chemex:install
浏览器
http://10.10.201.224
来使用咖啡壶。管理员账号密码为:admin / admin
。
仓库托管
Github https://github.com/celaraze/chemex
Gitee https://gitee.com/celaraze/chemex