Box is committed to helping improve the programming experience of Hyperf applications, managing the PHP environment and related dependencies, providing the ability to package Hyperf applications as binary programs, and also providing reverse proxy services for managing and deploying Hyperf applications.
You could download the latest builded box binary file from Github Actions artifact of this project.
Click here to download ~
Please notice that box ONLY supports for Swow, but NOT Swoole, so your Hyperf application should created by hyperf/swow-skeleton or other else swow skeleton.
wget https://github.com/hyperf/box/releases/download/v0.0.3/box_php8.1_x86_64_macos -O box
sudo mv ./box /usr/local/bin/box
sudo chmod 755 /usr/local/bin/box
// Make sure /usr/local/bin/box in your $PATH env, or put `box` into any path in $PATH env that you want
wget https://github.com/hyperf/box/releases/download/v0.0.3/box_php8.1_x86_64_linux -O box
sudo mv ./box /usr/local/bin/box
sudo chmod 755 /usr/local/bin/box
// Make sure /usr/local/bin/box in your $PATH env, or put `box` into any path in $PATH env that you want
wget https://github.com/hyperf/box/releases/download/v0.0.3/box_php8.1_aarch64_linux -O box
sudo mv ./box /usr/local/bin/box
sudo chmod 755 /usr/local/bin/box
// Make sure /usr/local/bin/box in your $PATH env, or put `box` into any path in $PATH env that you want
Box needs a Github Access Token to request github api, to retrieve the versions of the package.
- Create Github Access Token, the
workflowscope have to be selected. - Run
box config set github.access-token <Your Token>to init the token. - Have fun ~
box get pkg@versionto install the package from remote automatically,pkgis the package name, andversionis the version of package,box get pkgmeans to install the latest version of pkg, for example, runbox get php@8.1to install the PHP 8.1, runbox get composerto install the latest composer binbox build-prepareto get ready forbuildandbuild-selfcommandbox build-selfto build theboxbin itselfbox build <path>to build a Hyperf application into a binary filebox config listto dump the config filebox config get <key>to retrieve the value by key from config filebox config set <key> <value>to set value by key into the config filebox config unset <key>to unset the config value by keybox config set-php-version <version>to set the current PHP version of box, available value: 8.0 | 8.1box config get-php-version <version>to get the current PHP version of boxbox start -u <upsteamHost:upstreamPort>to start a proxy HTTP server for the upstream serverbox php <argument>to run any PHP command via current PHP version of boxbox composer <argument>to run any Composer command via box, the version of the composer bin depends on the last executedget composercommandbox php-cs-fixer <argument>to run any php-cs-fixer command via box, the version of the composer bin depends on the last executedget php-cs-fixercommandbox versionto dump the current version of the box bin