PS: 本文先容的方法,不须要安装 Docker,仅仅安装 Fun 即可,最大略的办法便是直接下载可实行的二进制文件。

安装完成后,可以实行 fun --version 检讨 Fun 是否安装成功。

第一个示例:快速初始化并支配一个 ThinkPHP 示例运用

初始化一个 thinkphp 示例:

php168轻松搭建基于 Serverless 的 ThinkPHP 运用 React

composer create-project topthink/think tp

将该示例在本地运行测试:

php think run

可以在本地看到效果:

传统的开拓办法是,本地开拓完成后,就要进行支配事情了,常日我们支配一个 PHP 运用可能须要如下几步:

购买一台物理机器,比如 ECS在物理机器上绑定公网 ip、安装 php、nginx、php-fpm配置 nginx、php-fpm 以及上传运用到该机器上运行测试

个中最繁芜的就要数第 2、3 步了,由于可能不同的环境的配置方法还不一样,会有比较多的坑。
我们演示下如何将运用支配到函数打算上。

fun deploy

仅须要一个命令,Fun 会自动进入支配流程,在该流程中,用户仅仅须要按下一系列的回车即可。
流程细节如下:

Fun 检测到这不是一个 Fun 项目,会提示帮忙创建(直接回车或者输入 y 即可)Fun 项目自动创建成功,提示是否进行支配?可以直接回车,或者输入 y 进行确认 然后 Fun 会直接将运用支配到线上了

支配完成后,我们可以根据支配成功的日志看到,函数打算为我们天生了临时域名 13492727-1986114430573743.test.functioncompute.com,我们可以通过这个临时域名直接访问我们刚刚支配的运用。

备注:临时域名仅仅用作演示以及开拓,是有时效的,如果用作生产,请绑定已经备案的域名。

第二个示例:快速迁移一个已有的 ThinkPHP 运用

这里我们拿一个开源的 ThinkPHP 博客做示例:https://github.com/wolf-leo/Wolf-Blog

首先我们须要将 blog 克隆下来:

git clone https://github.com/wolf-leo/Wolf-Blog.git

利用 composer 安装依赖:

composer install

在要利用的 mysql 数据库上新建一个名为 blog_test 的 database。
然后编辑 config/database.php 文件,修正个中的数据库地址、用户名、密码信息。

// ... ...return [ // ... ... // 做事器地址 'hostname' => '192.168.17.104', // 数据库名 测试数据库名称 不用修正 否则默认安装会出错 'database' => 'blog_test', // 用户名 须要修正的地方 'username' => 'root', // 密码 须要修正的地方 'password' => 'root', // ... ...];

修正完成后,就可以本地启动查看效果了:

$ php think runThinkPHP Development server is started On <http://127.0.0.1:8000/>You can exit with `CTRL-C`Document root is: /examples/php/Wolf-Blog/public

然后打开 http://localhost:8000 可以直接看到效果。

本地测试没问题后,就要进行支配了。
支配前,我们须要知道,由于函数打算运行时期码目录本身是不可以修正的,而 ThinkPHP 会在代码目录下的 Runtime 这个目录写一些缓存文件,我们须要将这个缓存文件放到 /tmp 下面。
在我们的例子中便是将 thinkphp/library/think/App.php 这个文件的第 174 行做如下修正:

- $this->runtimePath = $this->rootPath . 'runtime' . DIRECTORY_SEPARATOR;+ $this->runtimePath = DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR;

修正完成后可以直策应用以下命令进行支配:

fun deploy

经历与第一个示例一样的步骤后,我们可以得到一个可以访问的临时域名进行测试:13500180-1986114430573743.test.functioncompute.com。
打开该临时域名,可以预览到与本地运行一样的效果。

还可以访问 13500180-1986114430573743.test.functioncompute.com/admin 打开该运用的管理后台:

总结

本文紧张先容了如何将 ThinkPHP 运用支配到函数打算。
比较较与传统的支配方法,不仅没有更繁芜,还省略了购买机器、安装配置 Nginx、安装配置 php-fpm 等步骤。
可以实现,将传统的 ThinkPHP 运用在本地开拓完成后,一键支配到远端直接用于生产,并拥有了弹性伸缩、按量付费、免运维等特性。

查看更多:https://yqh.aliyun.com/detail/6896?utm_content=g_1000107051

上云就看云栖号:更多云资讯,上云案例,最佳实践,产品入门,访问:https://yqh.aliyun.com/