shanginn / som
与在Docker Compose环境中运行的PHP应用交互的命令行工具
1.0.1
2023-08-28 04:35 UTC
This package is auto-updated.
Last update: 2024-08-28 06:58:00 UTC
README
som
是一个用于与在Docker Compose上运行的Symfony应用程序(我现在使用 API platform)交互的命令行实用程序。它提供了一系列有用的命令来管理您的应用程序,并使运行Symfony、PHP、Composer和Docker Compose命令变得简单,无需手动使用Docker命令。
受Laravel的 sail
工具的启发,som
旨在提供类似的功能,但专门为基于Symfony的项目设计。
系统要求
- Docker和Docker Compose
- bash
- jq(可选,用于简写Composer脚本命令)
安装
composer require --dev shanginn/som
som
是一个bash脚本,它将被放置在 vendor/bin
文件夹中。您可以直接从那里使用它,但建议创建一个符号链接
ln -s vendor/bin/som som
用法
som COMMAND [options] [arguments]
未知命令将直接传递给Docker Compose。
Docker Compose命令
som up
- 启动应用程序som up -d
- 在后台启动应用程序som stop
- 停止应用程序som restart
- 重新启动应用程序som ps
- 显示所有容器的状态
Symfony控制台命令
som console ...
- 运行一个Symfony控制台命令
PHP命令
som php ...
- 运行PHP代码片段som php -v
- 显示PHP版本
Composer命令
som composer ...
- 运行Composer命令som run ...
- 运行Composer脚本(等同于 "composer run")
如果您已安装 'jq',并且您的 composer.json 中有,例如,'fix' 脚本,您可以运行
som fix
如果 composer.json 不在当前目录,请设置 COMPOSER_JSON_PATH 环境变量
运行测试
som test
- 通过Artisan测试命令运行PHPUnit测试som phpunit ...
- 运行PHPUnitsom pest ...
- 运行Pest
容器CLI
som shell
- 在应用程序容器中启动shell会话som bash
- 'som shell' 的别名som root-shell
- 在应用程序容器中启动root shell会话som root-bash
- 'som root-shell' 的别名- TODO:
som psysh
- 启动新的psysh会话
二进制文件
som bin ...
- 从 vendor/bin 目录运行Composer二进制脚本
帮助
som help
- 显示帮助信息
环境变量
可以在您的 .env 文件中定义环境变量。以下变量由 SOM 脚本使用
HTTP_PORT
: 您应用程序的HTTP端口(默认:80)HTTPS_PORT
: 您应用程序的HTTPS端口(默认:443)HTTP3_PORT
: 您应用程序的HTTP3端口(默认:443)DOCKER_PHP_SERVICE
: PHP的Docker服务名称(默认: "php")DOCKER_DB_SERVICE
: 数据库的Docker服务名称(默认: "database")DOCKER_WEB_SERVER_SERVICE
: Web服务器的Docker服务名称(默认: "caddy")DB_PORT
: 数据库端口(默认: 5432)USER
: Docker容器的用户ID(默认:当前用户的UID)GROUP
:Docker容器的组ID(默认:当前用户的GID)DOCKER_COMPOSE_FILES
:Docker Compose文件路径(如果多个文件,则以冒号分隔)COMPOSER_JSON_PATH
:composer.json文件的路径(默认:"composer.json")
贡献
欢迎贡献!请提交一个pull request或创建一个issue来讨论您想要进行的更改。