首页 文章 精选 留言 我的

精选列表

搜索[Composer维护],共10008篇文章
优秀的个人博客,低调大师

使用 composer + phpstorm 为 PHP 单元测试助力

PHP 单元测试的意义到底何在 我之前也有这样的困惑。看代码写的是否有问题,我们直接请求下就不 ok 了吗?为什么还要写单元测试呢?这不是多此一举吗? 那看我下面的场景举例吧。 单元测试一定要用框架吗 我觉得不用,直接一行脚本,可以不可以?我觉得 ok。比如php扩展的各种单元测试,都是简单的比对,非常直观。 那我们为什么现在大家都爱用phpunit呢? 就是一个非常强大的框架,功能比较全,省去了我们很多的工作。比如我们自己的测试脚本都是简单的自定义的脚本,能全局一次性运行吗?这是最基本的一个举例,实际的优势和便捷,还得自己慢慢使用才会发现。 PHP 单元测试的场景分类 自己分类了下 工具类 服务类 业务类 工具类 新写了一个工具库,比如时间格式化的方法,(刚刚、一分钟前、一小时前、一天前、一个月前等等)这样的函数或者方法。 误区:简单,发个帖子,帖子末尾会

优秀的个人博客,低调大师

部署维护docker环境

1,安装环境说明 系统环境:centos6.6 服务应用了:haproxyconfdetcddocker 主机名ip 服务角色 dockerha-152 192.168.36.152haproxyconfd dockerEtcd-153192.168.36.153etcd dockermain-154192.168.36.154docker 2,安装依懒包,关闭冲突的服务 cd/etc/yum.repos.d wgethttp://www.hop5.in/yum/el6/hop5.repo 修改grub的主配置文件表示第一个title下的内容为默认启动的kernel(一般新安装的内核在第一个位置)。 然后重启,重启系统,这时候你的内核就成功升级了,版本应该在3.8以上了, uname-r [root@dockermain-154shell]# 3.10.5-3.el6.x86_64 sed-i'/^SELINUX=/c\SELINUX=disabled'/etc/selinux/config setenforce0 在FedoraEPEL源中已经提供了docker-io包,下载安装epel: rpm-ivhhttp://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm sed-i's/^mirrorlist=https/mirrorlist=http/'/etc/yum.repos.d/epel.repo 3,安装组件 (1)haproxy confd dockerha-152上操作 1、haproxy # 2、confd #wgethttps://github.com/kelseyhightower/confd/releases/download/v0.6.3/confd-0.6.3-linux-amd64 #mvconfd/usr/local/bin/confd #chmod+x/usr/local/bin/confd #/usr/local/bin/confd-version (2)etcd dockerEtcd-153上操作 #mkdir-p/home/install&&cd/home/install #wgethttps://github.com/coreos/etcd/releases/download/v0.4.6/etcd-v0.4.6-linux-amd64.tar.gz #tar-zxvfetcd-v0.4.6-linux-amd64.tar.gz #cdetcd-v0.4.6-linux-amd64 #cpetcd*/bin/ #/bin/etcd-version etcdversion0.4.6 (3)docker #yum-yinstalldocker-io #servicedockerstart #chkconfigdockeron 4,docker命令使用 (1)查看帮助 dockerCOMMAND--help (2)搜索可用的境像 dockersearchname如示例:[root@dockermain-154src]#dockersearchcentos NAMEDESCRIPTIONSTARSOFFICIALAUTOMATED centosTheofficialbuildofCentOS.817[OK] ansible/centos7-ansibleAnsibleonCentos730[OK] tutum/centosCentosimagewithSSHaccess.Fortheroot...13[OK] jdeathe/centos-ssh-apache-phpCentOS-66.5x86_64/Apache/PHP/PHPm...8[OK] blalor/centosBare-bonesbaseCentOS6.5image8[OK] jprjr/centos-php-fpm6[OK] steeef/graphite-centosCentOS6.xwithGraphiteandCarbonviang...6[OK] tutum/centos-6.4DEPRECATED.Usetutum/centos:6.4instead....5[OK] layerworx/centosAgeneralCentOS6imagewiththeEPEL6an...2[OK] jr42/chef-solo-centosOfficialCentOSbaseimageswithcurrentc...1[OK] million12/centos-supervisorBaseCentOS-7withsupervisordlauncher,h...1[OK] internavenue/centos-perconaCentos-basedPerconaimage.1[OK] jdeathe/centos-sshCentOS-66.5x86_64/EPELRepo./OpenSSH...1[OK] jdeathe/centos-ssh-mysqlCentOS-66.5x86_64/MySQL.Imageinclude...1[OK] yajo/centos-epelCentOSwithEPELandfullyupdated1[OK] nimmis/java-centosThisisdockerimagesofCentOS7withdif...0[OK] lighthopper/orientdb-centosADockerfileforcreatinganOrientDBimag...0[OK] bbrietzke/centos-starterCentOS7withEPELandSupervisorD0[OK] tcnksm/centos-nodeDockerfileforCentOSpackagingnode0[OK] insaneworks/centosCentOS6.5x86_64+@update0[OK] snowyday/centosProvideforemacsandRictyfontonX11en...0[OK] dmglab/centosCentOSwithsuperpowers!0[OK] akroh/centosCentos6containerthathasbeenupdatedw...0[OK] timhughes/centosCentoswithsystemdinstalledandrunning0[OK] solict/provisionous-puppet-centosCentOSprovisionswithPuppetincluded0[OK] (3)下载镜像 注意镜像名称要写全,就是用docker search name 搜出来的NAME列的名称。 dockerpullname 如示例:[root@dockermain-154src]#dockerpulljdeathe/centos-ssh-apache-php Pullingrepositoryjdeathe/centos-ssh-apache-php ........ 62203f428b1f:Downloadcomplete e1812755a4ca:Downloadcomplete 0910edda3736:Downloadcomplete Status:Downloadednewerimageforjdeathe/centos-ssh-apache-php:latest (4)查看已安装的镜像 [root@dockermain-154src]#dockerimages REPOSITORYTAGIMAGEIDCREATEDVIRTUALSIZE centoslatestdade6cb4530a10daysago210.1MB jdeathe/centos-ssh-apache-phplatestf1a489312a4a3monthsago297.7MB (5)docker容器中运行命令 dockerrun命令有两个参数,一个是镜像名,一个是要在镜像中运行的命令。注意:IMAGE=REPOSITORY[:TAG],如果IMAGE参数不指定镜像的TAG,默认TAG为latest。[root@dockermain-154run]#sudodockerrunjdeathe/centos-ssh-apache-phpecho'helloworld!' helloworld![root@dockermain-154run]#sudodockerrunjdeathe/centos-ssh-apache-phphostname db7e1d2269fb (6)列出容器 查看最近生成的容器:dockerps-l 查看正在运行的容器:dockerps[root@dockermain-154run]#dockerps-l CONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES db7e1d2269fbjdeathe/centos-ssh-apache-php:latest"hostname"27secondsagoExited(0)26secondsagoadoring_babbage (7)显示容器标准输出 [root@dockermain-154run]#dockerps-l CONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES db7e1d2269fbjdeathe/centos-ssh-apache-php:latest"hostname"27secondsagoExited(0)26secondsagoadoring_babbage [root@dockermain-154run]#dockerlogsdb7e1d2269fb db7e1d2269fb (8)给容器中安装程序或服务 [root@dockermain-154run]#sudodockerruncentosyuminstall-yhttpd Loadedplugins:fastestmirror .......... DependencyInstalled: apr.x86_640:1.4.8-3.el7 apr-util.x86_640:1.5.2-6.el7 centos-logos.noarch0:70.0.6-1.el7.centos httpd-tools.x86_640:2.4.6-19.el7.centos mailcap.noarch0:2.1.41-2.el7 Failed: httpd.x86_640:2.4.6-19.el7.centos Complete! (9)保存对容器中的修改并生成新的镜像 dockercommitCONTAINERID[REPOSITORY[:TAG]] REPOSITORY参数可以是新的镜像名字,也可以是旧的镜像名;如果和旧的镜像名和TAG都相同,会覆盖掉旧的镜像。[root@dockermain-154~]#dockercommitbd7cc4f4ac92centos:httpd 1e0915f3247b86414ebc11fd994fc6abfb590ff3b1ab890949c845ee88b2d9f4[root@dockermain-154~]#dockerimages REPOSITORYTAGIMAGEIDCREATEDVIRTUALSIZE centoshttpd1e0915f3247b9secondsago320.8MB centoslatestdade6cb4530a10daysago210.1MB jdeathe/centos-ssh-apache-phplatestf1a489312a4a3monthsago297.7MB (10)停止正在运行的容器 (11)查看容器或镜像详情 下面是我刚保存提交产生的新的容器[root@dockermain-154~]#dockerinspect943e45b6e5f3[{"AppArmorProfile":"","Args":[],"Config":{"AttachStderr":true,"AttachStdin":true,"AttachStdout":true,"Cmd":["/bin/bash"],"CpuShares":0,"Cpuset":"","Domainname":"","Entrypoint":null,"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"ExposedPorts":null,"Hostname":"943e45b6e5f3","Image":"centos:httpd","MacAddress":"","Memory":0,"MemorySwap":0,"NetworkDisabled":false,"OnBuild":null,"OpenStdin":true,"PortSpecs":null,"StdinOnce":true,"Tty":true,"User":"","Volumes":null,"WorkingDir":""}, (12)删除容器 dockerrmCONTAINERID 查看所有容器ID:dockerps-a-q 删除所有的容器:dockerrm$(dockerps-a-q) (13)删除镜像 dockerrmiIMAGE (14)查看docker的信息,包括Containers和Images数目、kernel版本等 [root@dockermain-154~]#dockerinfo Containers:14 Images:56 StorageDriver:aufs RootDir:/var/lib/docker/aufs Dirs:89 ExecutionDriver:native-0.2 KernelVersion:3.10.5-3.el6.x86_64 OperatingSystem:<unknown> CPUs:1 TotalMemory:989.6MiB Name:dockermain-154 ID:W4PW:W3XR:FQZE:SBAA:2DS2:BM6N:DV5B:ARF2:3SZM:XGST:5ZF7:DFZV WARNING:Noswaplimitsupport (15)创建容器,并像平常ssh登录一样使用 [root@dockermain-154~]#dockerrun-i-tcentos/bin/bash[root@7c0414d03fe7/]#ls bindevetchomeliblib64lost+foundmediamntoptprocrootrunsbinselinuxsrvsystmpusrvar 本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1896112,如需转载请自行联系原作者

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册