俺也作了个 Vagrant 脚本,用来自动初始化出一个装好了 Apache (With SSL) + PHP (With XDebug) + PostgreSQL + Memcached 的虚拟机。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
raincious
V2EX    Vagrant

俺也作了个 Vagran 脚本,用来自动初始化出一个装好了 Apache (With SSL) + PHP (With XDebug) + PostgreSQL + Memcached 的虚拟机。

  •  
  •   raincious 2015 年 6 月 1 日 3083 次点击
    这是一个创建于 3914 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在俺之前发了个帖(/t/184541)得到了大家热情无私的帮助之后……,最终发现PuPHPet在国内实在没法下载,所以想办法还是自己写了个配置脚本来初始化。虽然没那么灵活,但是终究能用,于是整理了下拿出来。

    仓库地址

    https://github.com/raincious/little-vagrant-machine

    用法(最简单的)

    连上互联网,然后:

    git clone https://github.com/raincious/little-vagrant-machine.git 

    完成后在 little-vagrant-machine/Project 目录下建立你的项目文件夹,名称只可以是小写英文字符,中间可以有 - 符号。之后把你的项目拖进刚建立的文件夹。

    多个项目重复进行就行了。

    然后:

    cd little-vagrant-machine vagrant up 

    完成之后会给你创建一个装好了Apache、PHP、PostgreSQL和Memcached的干净虚拟机,方便你做开发。

    然后你可以用

    http://%项目文件夹名%.project.%主机名%.%你的本地域名%:8080

    或者

    https://%项目文件夹名%.project.%主机名%.%你的本地域名%:4443

    来访问。主机名一般是 vagrant-ubuntu-vivid-64,安装好之后会显示给你。

    用法(想要折腾的)

    • little-vagrant-machine/Vagrant/CA.* 自带的 CA 证书
    • little-vagrant-machine/Vagrant/domain 定义本地开发域名
    • little-vagrant-machine/Vagrant/type 这个你改了就不能用了……(目前只有一个选项)
    • little-vagrant-machine/Vagrant/init.sh 初始化脚本,不要改
    • little-vagrant-machine/Vagrant/before_init.sh 初始化之前执行的脚本,可以用来改 apt-get 源什么的。自己写。
    • little-vagrant-machine/Vagrant/Misc 用来初始化的通用工具

    特点

    • 就算有我也想不起来
    • 就一个初始化配置而已,能有啥特点
    • 能自动帮你开好SSL的网站算一个么?(OpenSSL什么的最讨厌了)
    • 里面不带任何管理工具,如果有需要请自行把他们拖到 Tool 目录下(简:纯净)
    • PHP 的 display_error 是默认的 off。(简:生产服务器 高……仿……真……)
    • 对默认配置不满的同学请自行 vagrant ssh(简:自由)

    哦,别忘了,还得

    • 把 CA 证书换成你自己的
    • little-vagrant-machine/Vagrant/domain 换成自己本地的 .dev 域名,不然解析不到127.0.0.1
    • 以上都要在第一次 vagrant up 之前干好。
    • 你需要自己开发机上装一个 pgAdmin 来管理 PostgreSQL 数据库。
    • 不要 PR 回来,谢谢(俺不一定有能力测试)。

    以上。

    6 条回复    2015-06-01 22:55:58 +08:00
    immjun
        1
    immjun  
       2015 年 6 月 1 日   1
    可以搞一个
    Nginx(With SSL) + HHVM + PostgreSQL + Redis
    raincious
        2
    raincious  
    OP
       2015 年 6 月 1 日
    @immjun

    这个俺可以加到TODO里,但得等啥时候不懒了再动手嗯……
    cevincheung
        3
    cevincheung  
       2015 年 6 月 1 日   1
    可以搞一个
    Nginx(With SSL) + PHP7 + PostgreSQL + Redis + Elasticsearch + PGPOOL + Squid + RoR + Python3

    (逃

    话说真正的不是应该每个App独立封装吗?
    raincious
        4
    raincious  
    OP
       2015 年 6 月 1 日
    @cevincheung

    哦,这个只是开发用的,我开发PHP的时候就用这套(除了自己偷偷改成NFS做文件夹同步),为了方便所以可以放多个项目。

    Python我还没形成一个开发流程的体系,所以就没弄。不过我倒是可以搞个 MySQL + PostgreSQL + Redis + Elasticsearch的(内存恐怕不够吧喂),然后个服务开个外部端口什么的,项目仍然是在自己的开发机上做。
    cevincheung
        5
    cevincheung  
       2015 年 6 月 1 日   1
    @raincious 反正只要是有postgresql我就支持
    Tonni
        6
    Tonni  
       2015 年 6 月 1 日   1
    楼主如果有兴趣可以试试 ansible
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1669 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 05:57 PVG 13:57 LAX 21:57 JFK 00:57
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86