mirror of
https://github.com/cedar2025/Xboard.git
synced 2025-01-22 10:38:14 -05:00
合并来自greatbody/dev的拉取请求#215
feat: Support configure environment variable to skip interactive configurat…
This commit is contained in:
commit
6ab033c4cf
3
.github/workflows/docker-publish.yml
vendored
3
.github/workflows/docker-publish.yml
vendored
@ -10,6 +10,7 @@ on:
|
||||
branches: [ "dev" ]
|
||||
# Publish semver tags as releases.
|
||||
tags: [ 'v*.*.*' ]
|
||||
workflow_dispatch: # Enable manual trigger
|
||||
|
||||
env:
|
||||
# Use docker.io for Docker Hub if empty
|
||||
@ -60,7 +61,7 @@ jobs:
|
||||
uses: docker/metadata-action@v5.5.1
|
||||
with:
|
||||
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
||||
|
||||
|
||||
- name: Get version
|
||||
id: get_version
|
||||
run: echo "version=$(git describe --tags --always)" >> $GITHUB_OUTPUT
|
||||
|
@ -46,6 +46,9 @@ class XboardInstall extends Command
|
||||
{
|
||||
try {
|
||||
$isDocker = env('docker', false);
|
||||
$enableSqlite = env('enable_sqlite', false);
|
||||
$enableRedis = env('enable_redis', false);
|
||||
$adminAccount = env('admin_account', '');
|
||||
$this->info("__ __ ____ _ ");
|
||||
$this->info("\ \ / /| __ ) ___ __ _ _ __ __| | ");
|
||||
$this->info(" \ \/ / | __ \ / _ \ / _` | '__/ _` | ");
|
||||
@ -67,7 +70,7 @@ class XboardInstall extends Command
|
||||
return;
|
||||
}
|
||||
// 选择是否使用Sqlite
|
||||
if (confirm(label: '是否启用Sqlite(无需额外安装)代替Mysql', default: false, yes: '启用', no: '不启用')) {
|
||||
if ($enableSqlite || confirm(label: '是否启用Sqlite(无需额外安装)代替Mysql', default: false, yes: '启用', no: '不启用')) {
|
||||
$sqliteFile = '.docker/.data/database.sqlite';
|
||||
if (!file_exists(base_path($sqliteFile))) {
|
||||
// 创建空文件
|
||||
@ -142,7 +145,7 @@ class XboardInstall extends Command
|
||||
$isReidsValid = false;
|
||||
while (!$isReidsValid) {
|
||||
// 判断是否为Docker环境
|
||||
if ($isDocker == 'true' && (confirm(label: '是否启用Docker内置的Redis', default: true, yes: '启用', no: '不启用'))) {
|
||||
if ($isDocker == 'true' && ($enableRedis || confirm(label: '是否启用Docker内置的Redis', default: true, yes: '启用', no: '不启用'))) {
|
||||
$envConfig['REDIS_HOST'] = '/run/redis-socket/redis.sock';
|
||||
$envConfig['REDIS_PORT'] = 0;
|
||||
$envConfig['REDIS_PASSWORD'] = null;
|
||||
@ -175,7 +178,7 @@ class XboardInstall extends Command
|
||||
abort(500, '复制环境文件失败,请检查目录权限');
|
||||
}
|
||||
;
|
||||
$email = text(
|
||||
$email = !empty($adminAccount) ? $adminAccount : text(
|
||||
label: '请输入管理员账号',
|
||||
default: 'admin@demo.com',
|
||||
required: true,
|
||||
|
@ -18,6 +18,10 @@ cd Xboard
|
||||
3. 执行数据库安装命令
|
||||
> 选择 **启用sqlite** 和 **Docker内置的Redis**
|
||||
```
|
||||
docker compose run -it --rm -e enable_sqlite=true -e enable_redis=true -e admin_account=your_admin_email@example.com xboard php artisan xboard:install
|
||||
```
|
||||
> 或者根据自己的需要在运行时选择
|
||||
```
|
||||
docker compose run -it --rm xboard php artisan xboard:install
|
||||
```
|
||||
> 执行这条命令之后,会返回你的后台地址和管理员账号密码(你需要记录下来)
|
||||
@ -67,4 +71,4 @@ docker compose up -d
|
||||
```
|
||||
|
||||
### 注意
|
||||
启用webman后做的任何代码修改都需要重启生效
|
||||
启用webman后做的任何代码修改都需要重启生效
|
||||
|
Loading…
Reference in New Issue
Block a user