如何在Linux上安装配置DockerUI

如何在Linux上安装配置DockerUI,第1张

1、检查系统需求

Apache/Nginx

MySQL

PHP 5.5.9+

Composer

PHP扩展:OpenSSL、 PDO、Mbstring、Tokenizer、Fileinfo、GD(2.0+)/Imagick(6.5.7+)

系统满足上述需求后才能继续进行安装

2、使用Composer安装项目和依赖

在web根目录下运行以下命令:

composer create-project pyrocms/pyrocms=3.0-beta1 --prefer-source

注意在Windows系统中这里我们不能使用--prefer-dist选项进行安装,否则会报错:

[ErrorException]

ZipArchive::extractTo(): No such file or directory

注:使用--prefer-source选项会强制克隆源代码,而不是像--prefer-dist那样强制下载git引用的压缩包。

Composer使用PHP的ZipArchive扩展压缩文件,使用--prefer-dist安装在Windows系统上存在一个问题:如果路径大于256个字符或者包含.会抛出上述错误异常,进而导致Composer不能继续往下运行。Linux上则不存在这个问题。

安装完成后,如果是在Linux环境需要配置storage、public/assets、bootstrap/cache目录的可写权限。

如果你觉得Composer安装麻烦还可以使用学院提供的一键安装包:PyroCMS 3.0测试版一键安装包。

3、在浏览器中完成安装和配置

在浏览器中导航到http://localhost/pyrocms/public,页面会自动跳转到安装界面http://localhost/pyrocms/public/installer,此时页面可能会出现错误页面,错误提示信息如下:

FatalErrorException in Container.php line 790:

Maximum function nesting level of '100' reached, aborting!

在Laravel中这并不是什么bug,只是因为安装了XDebug而PHP配置文件中xdebug.max_nesting_level对应值设置过低的缘故(默认为100),我们只需将其值设置为250(Homestead虚拟机中就是这么设置的)并重启web服务器即可。

注意第一次访问需要较长时间,这是因为要编译并加载前端资源的缘故。加载完成后,安装页面显示如下(部分截图):

在该页面我们要填写数据库配置信息,管理员账户信息以及站点的一些通用配置。填写完成后点击“Save”按钮提交表单,然后进入安装进度页面,完成站点相关配置和初始化 *** 作,以及基本模块和扩展的安装:

安装完成后显示如下:

点击“Login”按钮进入登录页面:

填写我们之前提交的管理员账户信息进行登录。登录成功后跳转到后台管理页面http://localhost/pyrocms/public/admin/dashboard:

PyroCMS采用类似Drupal(一个流行的开源CMS)的节点(Node)方式来组织内容,一切元素诸如表单元素、分类、类型、设置等都可以看作节点,然后以节点方式组成内容,比如发布Posts需要先创建分类,类型(如文章、视频等),以及文章字段对应的表单元素节点等。感兴趣的同学可以去玩玩,这里我就不深入探讨了。

    这边收到了很多ai硬件设备,需要做压力测试、稳定性测试。苦于非安卓系统,不能借助input tap等方式进行ui自动化,也没找到合适的工具。上网查了资料加上自己多次测试排了一些坑,基本可以通过捕捉event实现简单UI自动化。

    /dev/input目录下的事件都是在驱动中调用input_register_device(struct input_dev *dev)产生的。

每个event将上报指定的事件:

比如:

通常触摸屏事件就会上报坐标轴事件,电源键比如按下是 1,松开是 0。而与event对应的相关设备信息位于/proc/bus/input/devices。可以直接cat 查看devces信息。小米手机为例:

    首先要会捕捉触摸屏以及所需要控制的按键事件,安卓系统比较简单,用自带的getevent就可以了。这边用小米手机为例:

我这边使用的触摸屏事件,打印的event1信息,可以理解为event1上报触摸屏事件。同样,使用电源键、音量键、home键也会用不同的event信息打印:

这里对应event0、event3、event4

但是在绝大多数linux是没有的!!!(有时候BSP对带,which一下就知道了)

如果没有的话只能编译一个放进去,这里推荐evtest

编译方法:

注:arm设备需要使用特定的交叉编译工具,否则可能无法执行;

方法:evtest /dev/input/event

通过evtest.c可以查看设备事件消息,通过TouchScreen.c可以实现点触摸屏某个坐标

[参考文档]( https://download.csdn.net/download/asd2479745295/10712830 )

编译文件push到设备。./touch xxx yyy

这边在使用时懒得充值,没找到合适的免费资源,找到了另一种解决方法。

( https://www.jianshu.com/p/6b5a172e064a )

可以参考之前一篇模拟快速点击的方法;

捕捉:

使用dd指令

模拟:

1、反向使用

2、可以使用追加

此方法可以模拟点击、滑屏、快速点击,各种实体按键短按、长按、快速点击等。暂时没有找到触摸屏长按的方法,原因是 无法控制长按的时间(追加的速度过快),但是可以通过脚本循环实现。

一个简单的循环,测试可以实现长按,但是不好控制时间,有一个思路是获取获取linux系统时间,在循环体中,true修改成时间条件但是可能打断长按事件。

还有一种可行性高,就是单独做成一个脚本供调用,另一个主脚本控制时间,到时间后kill进程来控制。方法很多,因为工作中没有用到这一项就没测试了。

1、ubuntu下编译解决。

2、捕捉的evest为空

数据量太少,dd的版本较低。更新busybox或者dd版本

3、while((1))报错

设备没有bash,只有sh,修改为while((true))可以解释通过。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8662550.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存