参考地址1: http://segmentfault.com/blog/fenbox/1190000000264347
参考地址2: http://blog.phpor.me/2014/10/12/vagrant-%E6%9C%AC%E5%9C%B0%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83.html
下载的系统是centos6.3 64位: https://s3.amazonaws.com/itmat-public/centos-6.3-chef-10.14.2.box
Vagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/python/ruby/java 这类语言开发 web 应用,“代码在我机子上运行没有问题”这种说辞将成为历史。
我们可以通过 Vagrant 封装一个 Linux 的开发环境,分发给团队成员。成员可以在自己喜欢的桌面系统(Mac/Windows/Linux)上开发程序,代码却能统一在封装好的环境里运行,非常霸气。
以下是实战内容:
Last login: Tue Mar 24 14:20:44 on console ➜ ~ ls AFNetworking Documents Music Rainforest install.log swift_language_learning.md AndroidStudioProjects Downloads PhpstormProjects VirtualBox VMs mbox t.txt Applications Library Pictures a.php myfile.in test.awk Desktop Movies Public dead.letter paros ➜ ~ cd Documents/vagrant_maxwelldu ➜ vagrant_maxwelldu ls movienext ➜ vagrant_maxwelldu cd movienext ➜ movienext ls ➜ movienext ll ➜ movienext vagrant box add base ~/Downloads/centos-6.3-chef-10.14.2.box ==> box: Adding box 'base' (v0) for provider: box: Downloading: file:///Users/michaeldu/Downloads/centos-6.3-chef-10.14.2.box ==> box: Successfully added box 'base' (v0) for 'virtualbox'! ➜ movienext ls ➜ movienext ll ➜ movienext vagrant box list base (virtualbox, 0) ➜ movienext vagrant init base A `Vagrantfile` has been placed in this directory. You are now ready to `vagrant up` your first virtual environment! Please read the comments in the Vagrantfile as well as documentation on `vagrantup.com` for more information on using Vagrant. ➜ movienext ll total 8 -rw-r--r-- 1 michaeldu staff 3016 Mar 24 16:00 Vagrantfile ➜ movienext vagrant up Bringing machine 'default' up with 'virtualbox' provider... ==> default: Importing base box 'base'... ==> default: Matching MAC address for NAT networking... ==> default: Setting the name of the VM: movienext_default_1427184057998_56337 ==> default: Clearing any previously set network interfaces... ==> default: Preparing network interfaces based on configuration... default: Adapter 1: nat ==> default: Forwarding ports... default: 22 => 2222 (adapter 1) ==> default: Booting VM... ==> default: Waiting for machine to boot. This may take a few minutes... default: SSH address: 127.0.0.1:2222 default: SSH username: vagrant default: SSH auth method: private key default: Warning: Connection timeout. Retrying... default: Warning: Remote connection disconnect. Retrying... default: default: Vagrant insecure key detected. Vagrant will automatically replace default: this with a newly generated keypair for better security. default: default: Inserting generated public key within guest... default: Removing insecure key from the guest if its present... default: Key inserted! Disconnecting and reconnecting using new SSH key... ==> default: Machine booted and ready! ==> default: Checking for guest additions in VM... default: The guest additions on this VM do not match the installed version of default: VirtualBox! In most cases this is fine, but in rare cases it can default: prevent things such as shared folders from working properly. If you see default: shared folder errors, please make sure the guest additions within the default: virtual machine match the version of VirtualBox you have installed on default: your host and reload your VM. default: default: Guest Additions Version: 4.1.22 default: VirtualBox Version: 4.3 ==> default: Mounting shared folders... default: /vagrant => /Users/michaeldu/Documents/vagrant_maxwelldu/movienext ➜ movienext vagrant ssh Last login: Fri Sep 14 17:53:41 2012 from 10.0.2.2 [vagrant@localhost ~]$ cd /va vagrant/ var/ [vagrant@localhost ~]$ cd /va vagrant/ var/ [vagrant@localhost ~]$ cd /vagrant/ [vagrant@localhost vagrant]$ wget http://www.baidu.com --2015-03-24 09:02:48-- http://www.baidu.com/ Resolving www.baidu.com... ^C [vagrant@localhost vagrant]$ exit logout Connection to 127.0.0.1 closed. ➜ movienext vim Vagrantfile ➜ movienext vagrant reload ==> default: Attempting graceful shutdown of VM... ==> default: Clearing any previously set forwarded ports... ==> default: Clearing any previously set network interfaces... ==> default: Preparing network interfaces based on configuration... default: Adapter 1: nat default: Adapter 2: hostonly ==> default: Forwarding ports... default: 22 => 2222 (adapter 1) ==> default: Booting VM... ==> default: Waiting for machine to boot. This may take a few minutes... default: SSH address: 127.0.0.1:2222 default: SSH username: vagrant default: SSH auth method: private key default: Warning: Connection timeout. Retrying... ==> default: Machine booted and ready! ==> default: Checking for guest additions in VM... default: The guest additions on this VM do not match the installed version of default: VirtualBox! In most cases this is fine, but in rare cases it can default: prevent things such as shared folders from working properly. If you see default: shared folder errors, please make sure the guest additions within the default: virtual machine match the version of VirtualBox you have installed on default: your host and reload your VM. default: default: Guest Additions Version: 4.1.22 default: VirtualBox Version: 4.3 ==> default: Configuring and enabling network interfaces... ==> default: Mounting shared folders... default: /vagrant => /Users/michaeldu/Documents/vagrant_maxwelldu/movienext ==> default: Machine already provisioned. Run `vagrant provision` or use the `--provision` ==> default: to force provisioning. Provisioners marked to run always will still run. ➜ movienext vagrant ssh Last login: Tue Mar 24 09:01:32 2015 from 10.0.2.2 [vagrant@localhost ~]$ ping www.baidu.com PING www.a.shifen.com (61.135.169.125) 56(84) bytes of data. 64 bytes from 61.135.169.125: icmp_seq=1 ttl=63 time=5.12 ms 64 bytes from 61.135.169.125: icmp_seq=2 ttl=63 time=5.86 ms 64 bytes from 61.135.169.125: icmp_seq=3 ttl=63 time=4.77 ms ^C --- www.a.shifen.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2112ms rtt min/avg/max/mdev = 4.775/5.255/5.867/0.459 ms
到这里把vagrant安装好了, 进去了, 后面还需要安装lnmp
nginx安装参考地址: http://blog.csdn.net/stuartjing/article/details/8124491
nginx对应版本地址: http://nginx.org/en/download.html
安装好了之后,
vagrant box list vagrant box add base ~/Downloads/centos-6.3-chef-10.14.2.box vagrant init base vi Vagrantfile config.vm.network "private_network", ip: "192.168.33.10" vagrant up vagrant ssh sudo su - yum search mysql yum -y install mysql mysql-devel mysql-server php-mysql service mysqld start /usr/bin/mysqladmin -u root password 'root' mysql -uroot -proot netstat -tunpl mysql -uroot -proot use mysql select Host, User, Password from user; update user set Host='%' where User='root' And Host='127.0.0.1'; update user set Password=password('root'); select Host, User, Password from user; flush privileges; exit service mysqld restart /etc/init.d/iptables stop chkconfig --levels 35 iptables off yum -y install php php-gd php-fpm php-pdo yum search nginx yum -y install nginx /etc/init.d/php-fpm restart
相关推荐
Vagrant在现代软件开发流程中扮演着重要角色,它以一种高效、一致的方式解决了跨平台开发环境搭建的难题。随着技术的不断进步和开发者需求的日益增长,Vagrant的功能和适用性也在不断地拓展和提升。
在这个场景中,我们并未指定具体使用哪一款,但以VirtualBox为例,它是一款开源且跨平台的虚拟化工具,适合个人开发者使用。下载并安装VirtualBox后,我们需要创建一个新的虚拟机,配置包括内存大小、处理器核心数量...
Vagrantfile文件则与Vagrant配置相关,Vagrant是一个轻量级的虚拟机管理工具,用于创建和配置虚拟开发环境。文件列表中的terminal.glue可能是一个自定义的模块或脚本,用于处理与命令行界面相关的交互。 整个项目...
它还支持Xdebug、Docker、Vagrant等工具,方便进行跨平台开发。 ### 10. 项目模板与Live Templates 在`File` > `New Project`中,你可以选择预设的项目模板快速启动新项目。此外,`Editor` > `Live Templates`允许...
作者于2019年6月下旬至7月初,从北京市中心(紫禁城)到郊区设置了4条不同走向(东北、西北、西南和正南)的城—郊梯度样带;随机选取了20个独立的城市森林公园进行采样。每个公园选择3块典型森林斑块,采集表层(0-10 cm)和亚表层(10-20 cm)土壤样品,并测定了土壤总碳含量、土壤有机碳含量、颗粒态有机碳和矿物结合态有机碳含量。该数据集内容包括:(1)样点位置数据;(2)研究区森林表土总碳、总有机碳、总无机碳、颗粒态有机碳和矿物结合态有机碳含量;(3)森林表土碳组分含量与不同影响因素数据,包括:土壤数据(土壤pH、土壤粘粉粒含量)、植被数据(植被覆盖度、公园年龄、树种多样性)、气候数据(年均温、年降水量)。数据集存储为.shp和.xlsx格式,由8个数据文件组成,数据量为30.7 KB(压缩为1个文件,27 KB)。田越韩, 郭泓伯, 高晓飞等. 北京森林表土碳组分城郊梯度变化及其影响因素[J]. 地理学报, 2024, 79(1): 206-217. DOI: 10.11821/dlxb202401013.
内容概要:本文详细介绍了集成CH340和FT232两款芯片的USB转串口模块的设计与应用。该模块尺寸为61x35mm,采用跳线帽进行芯片切换,支持多种接口(USB-A公头、Mini USB母座)和电源输出(5V和3.3V)。文中探讨了硬件配置、电源设计、信号切换电路以及PCB布局等方面的细节,并提供了Python、Arduino和Linux下的代码示例来展示不同场景下的使用方法。此外,还分享了一些实际项目中的经验和注意事项,如波特率适配、电磁兼容性和稳压电路设计等。 适合人群:从事嵌入式系统开发、硬件设计及相关领域的工程师和技术爱好者。 使用场景及目标:适用于需要灵活选择USB转串口芯片的项目,特别是在工业级应用场景中,能够提供稳定的通信解决方案。目标是帮助开发者更好地理解和利用这一模块,提高开发效率和产品质量。 其他说明:文中提到的双芯片设计方案不仅兼顾了成本效益,还能满足不同项目的特定需求。对于初学者来说,可以通过提供的代码示例快速上手;而对于资深工程师,则可以深入研究硬件设计细节,优化现有产品。
内容概要:本文详细探讨了利用MATLAB实现水平集进化进行图像轮廓提取的方法。首先介绍了传统的水平集演化方法存在的问题,如频繁的重新初始化导致计算效率低下和分割精度波动。接着提出了一种改进方案,即在演化方程中引入正则化项来自适应地维护水平集的良好状态,从而避免了显式的重新初始化操作。此外,还讨论了曲率计算方法的优化以及参数选择的影响,并展示了改进前后算法性能的具体对比实验结果。 适合人群:从事图像处理、计算机视觉领域的研究人员和技术开发者,尤其是对水平集方法有一定了解并希望提高其实战应用效果的专业人士。 使用场景及目标:适用于需要精确分割图像中目标对象的应用场合,如医学影像分析(CT、MRI)、遥感图像处理等。主要目的是提升图像分割的速度和准确性,同时降低计算资源消耗。 其他说明:文中提供了多个MATLAB代码片段用于解释各个关键技术点,便于读者理解和实践。对于想要深入了解水平集演化的机制及其优化策略的人来说是非常有价值的参考资料。
MLP信息熵研究完整代码
内容概要:本文详细介绍了基于西门子S7-200 PLC的恒压供水系统的设计与实现。系统采用一拖二或一拖三模式,确保供水系统的可靠性。核心组件包括PLC、富士PID控制模块和ABB变频器,通过精确的压力控制和快速响应,实现了稳定的恒压供水。文中提供了详细的PLC程序示例,涵盖水泵启停控制、PID算法调用以及变频器频率调节等功能。此外,还展示了触摸屏界面设计,用于实时监控和操作。硬件配置方面,强调了柜体制作图纸的重要性和规范性,确保电气接线正确无误。调试过程中,作者分享了许多实用技巧,如PID参数整定、变频器设置和故障切换逻辑等。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是对PLC编程和恒压供水系统感兴趣的读者。 使用场景及目标:适用于工业现场的恒压供水系统设计与实施,旨在提高供水系统的稳定性和可靠性,减少因设备故障导致的生产中断。 其他说明:本文不仅提供了完整的硬件配置和软件编程指导,还分享了丰富的实战经验和调试技巧,帮助读者更好地理解和应用相关技术。
内容概要:本文详细介绍了基于西门子224XP PLC和ABB ACS510变频器的一对一变频恒压供水系统的设计与实现。系统旨在保持管网压力恒定,确保用户在不同用水需求下获得稳定水压。硬件配置包括西门子S7-224XP PLC、ABB ACS510变频器以及昆仑通态触摸屏。系统采用双PID控制策略,分为低频段和高频段控制,以提高响应速度和稳定性。此外,通过合理的逻辑设计实现了变频器之间的无缝切换,确保压力波动最小。实际应用案例表明,该系统显著减少了压力波动,降低了能耗,提升了用户满意度。 适合人群:从事工业自动化领域的工程师和技术人员,特别是对PLC编程和变频器配置有一定经验的人群。 使用场景及目标:适用于需要恒压供水的高层建筑、住宅小区等场所,目标是实现高效的水资源管理和节能降耗。 其他说明:文中还分享了一些调试技巧和注意事项,如变频器参数配置、PID参数调整、模拟量输出切换逻辑等,有助于实际项目的顺利实施。
内容概要:本文详细介绍了如何利用OPC技术和KepWare软件解决老PLC与新触摸屏之间的连接问题。首先解释了OPC的作用及其工作机制,接着阐述了KepWare作为OPC服务器的功能和配置方法,包括添加设备驱动、配置参数以及创建标签。随后展示了具体的案例程序,如配置Modbus TCP通道、定义标签并进行数据转换,以及在HMI端使用VB脚本、C#代码等实现与KepWare的连接和数据交互。此外,文中还提供了关于优化性能、处理常见错误和故障排查的方法,如调整超时时间、设置心跳检测机制等。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是需要解决老旧设备与现代控制系统兼容性的相关人员。 使用场景及目标:适用于需要将传统PLC集成到现代化HMI系统的场合,旨在确保不同年代、不同品牌的工业设备能够稳定可靠地相互通信,提高生产效率和维护便利性。 其他说明:文中不仅提供了详细的理论讲解,还有丰富的实战经验和技巧分享,帮助读者快速掌握相关技能并在实际工作中应用。
内容概要:本文详细介绍了利用MATLAB实现运动目标检测与追踪的方法。首先通过三帧差分法初步锁定运动目标,接着使用SIFT(尺度不变特征变换)算法稳定特征点,最后借助Meanshift算法进行持续追踪。文中不仅提供了具体的MATLAB代码实现,还讨论了各步骤的技术要点,如特征匹配、几何校验、核密度估计等。此外,针对可能出现的问题提出了优化措施,例如状态机模式下重新触发检测、SIFT特征定期更新以及自适应融合策略的应用。 适合人群:具有一定MATLAB编程基础的研究人员和技术爱好者,尤其是从事计算机视觉、图像处理领域的从业者。 使用场景及目标:适用于需要精确捕捉和跟踪视频序列中特定对象的应用场合,如安防监控、智能交通、机器人导航等领域。主要目的是提高目标检测的准确性和追踪的稳定性。 其他说明:文中提到的技术组合能够有效应对复杂环境下的目标追踪挑战,但在颜色突变场景中表现不佳。建议根据具体应用场景选择合适的算法组合,并考虑硬件配置的影响。
内容概要:本文详细介绍了如何利用LabVIEW与三菱FX5U PLC进行以太网通讯的方法。首先,文中讲解了FX5U的以太网配置步骤,包括设置静态IP地址、开放TCP端口以及启用MC协议。接着,重点阐述了LabVIEW中TCP通信节点的应用,特别是针对不同类型的寄存器(X/Y/M/D)的读写操作,提供了具体的报文结构和LabVIEW代码实现方法。此外,文章还讨论了一些常见的实操注意事项,如字节序处理、批量读写的限制、通讯延时等,并分享了作者在实际项目中的经验教训。最后,给出了完整的源码链接,方便读者直接应用于工程项目中。 适合人群:从事工业自动化控制领域的工程师和技术人员,尤其是熟悉LabVIEW和三菱PLC的用户。 使用场景及目标:适用于需要将LabVIEW与三菱FX5U PLC集成的工业控制系统开发,旨在提高系统的可靠性和效率,减少调试时间和成本。 其他说明:文中提供的解决方案已经在多个实际项目中得到验证,性能稳定,能够满足大多数工业应用场景的需求。
21世纪的网络会计.docx
内容概要:本文详细介绍了昆仑通态MCGS组态软件的各种样板程序及其应用场景,旨在帮助开发者高效利用这些预构建模块进行工业自动化项目的开发。文中涵盖了多个关键技术点,如报表生成功能、动画配置、Modbus通信、U盘导出、PID控制、数据记录与转发、报警处理以及配方管理等。每个部分不仅提供了具体的代码示例,还分享了许多基于实际项目经验的技术细节和优化建议。 适合人群:从事工业自动化控制系统开发的技术人员,尤其是具有一定编程基础并对MCGS有一定了解的研发人员。 使用场景及目标:适用于各类工业现场的自动化控制系统开发,如污水处理厂、泵站、锅炉房等。主要目标是通过使用MCGS提供的样板程序,快速搭建稳定可靠的自动化控制系统,缩短开发周期,提高工作效率。 其他说明:文章强调了理解和灵活运用这些样板程序的重要性,指出在具体应用中需要根据实际情况调整参数和组合方式,以满足特定的需求。此外,作者还分享了一些个人经验和教训,使读者能够更好地规避常见错误和技术陷阱。
内容概要:本文详细介绍了西门子1200PLC在一个大型包膜机项目中的应用,涵盖通讯架构、伺服控制、故障处理等多个方面。该项目涉及5台S7-1200和1台S7-1500组成分布式控制系统,通过Profinet、ModbusRTU等多种通讯协议实现设备间高效协同。伺服控制部分展示了复杂的轴控制逻辑,利用PTO控制20多个伺服轴,确保精确运动。故障处理逻辑则体现了高度的容错性和智能化,如自动切换备用传感器、尝试多次复位等。此外,触摸屏程序集成了机械结构图和3D动画,提供直观的操作和故障诊断体验。 适合人群:从事工业自动化、PLC编程、机电一体化等相关工作的工程师和技术人员。 使用场景及目标:适用于新能源行业的自动化生产线设计与实施,旨在提高生产效率、降低故障率并优化人机交互体验。 其他说明:文中提供了大量实际案例和代码片段,帮助读者深入理解各个技术细节。同时强调了项目中的实战经验和创新解决方案,对未来的多PLC项目具有重要的参考价值。
内容概要:本文详细介绍了利用FPGA实现永磁同步电机(PMSM)的磁场定向控制(FOC),重点探讨了三环控制系统(电流环、速度环、位置环)的设计与实现。文章首先阐述了电流环的高效并行处理方法,通过Verilog代码展示了电流采样的并行处理和坐标变换。接着讨论了速度环和位置环的配合,特别是在FPGA中使用Cordic算法进行位置估算的方法。文中还提到了双闭环切换时的抖振问题解决办法以及FPGA与STM32的对比,强调了FPGA在并行处理和实时性方面的优势。此外,文章涉及了SVPWM生成、编码器信号处理、异构系统时钟同步等问题,并分享了一些实际调试经验和技巧。 适合人群:从事电机控制研究的技术人员,尤其是对FPGA和永磁同步电机有兴趣的研发人员。 使用场景及目标:适用于希望深入了解FPGA在电机控制领域的应用,掌握FOC控制原理和技术细节的人群。目标是提高对复杂电机控制系统的理解和实现能力。 其他说明:文章不仅提供了理论知识,还包括了大量的代码实例和实践经验,有助于读者更好地理解和应用相关技术。
BIM项目管理应用与项目管理.docx
2023年软件测试外包揭秘我是一个二手的程序员ITeye技术网站.doc
内容概要:本文深入探讨了一款30kW三相PFC充电桩的技术细节,涵盖从硬件设计到软件实现的各个方面。首先介绍了完整的文件资料,包括Altium Designer原理图、BOM表、CCS工程项目文件及详细的测试报告。接着详细解析了主电路采用的T型三相维也纳结构及其优势。重点讨论了主控芯片TMS320F28069的特点,尤其是其32位浮点运算能力和CLA协处理器的作用。随后阐述了关键算法,如正负序分离锁相环算法、三相DQ变换和中点平衡控制的具体实现方法。最后分享了一些实战经验和注意事项,强调了硬件设计对软件性能的影响。 适合人群:从事电力电子、嵌入式系统开发的专业人士,尤其是对大功率充电设备感兴趣的工程师和技术爱好者。 使用场景及目标:适用于希望深入了解30kW三相PFC充电桩设计原理的研发团队,旨在帮助他们掌握从硬件搭建到软件编程的关键技术和最佳实践。 其他说明:文中提供了大量代码片段和实践经验,有助于读者更好地理解和应用所介绍的技术。同时,强调了硬件与软件协同设计的重要性,为实际项目提供宝贵的参考。