From 23a68370b482ac34c56b200d88a9bc2149a6d0b0 Mon Sep 17 00:00:00 2001 From: kuaifan Date: Mon, 5 May 2025 08:25:21 +0800 Subject: [PATCH] no message --- app/Http/Controllers/Api/AppsController.php | 2 +- app/Module/Apps/Apps.php | 43 ++++++++++++------- app/Module/Apps/Volumes.php | 46 +++++++-------------- 3 files changed, 46 insertions(+), 45 deletions(-) diff --git a/app/Http/Controllers/Api/AppsController.php b/app/Http/Controllers/Api/AppsController.php index 6689e7c2c..807dc460e 100755 --- a/app/Http/Controllers/Api/AppsController.php +++ b/app/Http/Controllers/Api/AppsController.php @@ -22,6 +22,6 @@ class AppsController extends AbstractController public function down() { $appName = 'MysqlExposePort'; - return Apps::dockerComposeUp($appName, 'down'); + return Apps::dockerComposeDown($appName); } } diff --git a/app/Module/Apps/Apps.php b/app/Module/Apps/Apps.php index c0dae5c3e..8deb1fda3 100644 --- a/app/Module/Apps/Apps.php +++ b/app/Module/Apps/Apps.php @@ -10,13 +10,13 @@ use Symfony\Component\Yaml\Exception\ParseException; class Apps { /** - * 执行docker-compose up|down命令 + * 执行docker-compose up命令 * @param string $appName - * @param string $command * @param string $version + * @param string $command * @return array */ - public static function dockerComposeUp(string $appName, string $command = 'up', string $version = 'latest'): array + public static function dockerComposeUp(string $appName, string $version = 'latest', string $command = 'up'): array { // 获取版本信息 $versions = self::getAvailableVersions($appName); @@ -37,9 +37,7 @@ class Apps file_put_contents($versionInfo['base_dir'] . '/latest', $versionInfo['version']); // 生成docker-compose.yml文件 - $filePath = $versionInfo['compose_file']; - $savePath = $versionInfo['path'] . '/docker-compose.doo.yml'; - $result = self::generateDockerComposeYml($filePath, $savePath, [ + $result = self::generateDockerComposeYml($versionInfo['compose_file'], [ 'PROXY_PORT' => '33062', // todo 参数自定义 ]); if (!$result) { @@ -67,24 +65,41 @@ class Apps return Base::retSuccess("success", $resData['data']); } + /** + * 执行docker-compose down命令 + * @param string $appName + * @param string $version + * @return array + */ + public static function dockerComposeDown(string $appName, string $version = 'latest'): array + { + return self::dockerComposeUp($appName, $version, 'down'); + } + /** * 生成docker-compose.yml文件配置 * * @param string $filePath docker-compose.yml文件路径 - * @param string|null $savePath 保存文件路径,为空则覆盖原文件 * @param array $params 可选参数,替换docker-compose.yml中的${XXX}变量 * @return bool 是否生成成功 */ - private static function generateDockerComposeYml(string $filePath, ?string $savePath = null, array $params = []): bool + private static function generateDockerComposeYml(string $filePath, array $params = []): bool { // 应用名称 - $appName = basename(dirname($filePath)); - $serviceName = preg_replace('/(?