大家写自己的小 web 项目都是怎么个发布流程? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xiaotianhu
V2EX    问与答

大家写自己的小 web 项目都是怎么个发布流程?

  •  
  •   xiaotianhu 2017-11-25 12:27:35 +08:00 3319 次点击
    这是一个创建于 2954 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如 php 项目,总得自己弄个 git 或者用 github 啥的吧 然后直接在服务器开发?或者本机开发?然后怎么推到服务器? 有没有简单方便的流程

    20 条回复    2017-11-26 13:00:09 +08:00
    onlyhot
        1
    onlyhot  
       2017-11-25 13:43:21 +08:00 via iPhone
    ftp
    18583826786
        2
    18583826786  
       2017-11-25 13:43:27 +08:00 via Android
    本机开发,服务器环境搭好,把项目传过去,启动服务就行了
    ofnh
        3
    ofnh  
       2017-11-25 14:04:57 +08:00 via Android
    我说说我自己的小项目流程啊
    gogs 作为 git 服务器
    jenkins 作为编译 打包 部署的工具
    流程:代码提交 git,然后会触发 jenkins 编译
    编译之后,打包压缩成 7z 压缩包,上传阿里云 oss
    触发部署任务,从阿里云 oss 上拉下来解压部署等一系列操作
    整套流程只需要提交代码就可以了
    ps:现在在做的一个小工具,打算把 jenkins 编译状态、时间等信息更新到对应仓库的 wiki 上
    reexamine
        4
    reexamine  
       2017-11-25 14:20:42 +08:00 via iPhone
    我的 php 项目
    gogs 作为 git 服务器,设置 hook,本地配置开发环境开发完成,push 到 git 触发 hook,服务器自动 pull 代码,完。这套流程跟楼上差不多,只不过 php 少了编译这个环节
    kslr
        5
    kslr  
       2017-11-25 14:37:37 +08:00   1
    git push
    git pull
    whypool
        6
    whypool  
       2017-11-25 14:40:35 +08:00
    node 项目;
    本地用 git push 到仓库;
    ssh 到服务器,git pull 拉取代码;
    然后 pm2 重启 node 服务;
    如果 npm 包有增删,还得重新跑一次 npm install
    lhx2008
        7
    lhx2008  
       2017-11-25 14:46:39 +08:00 via Android
    php 最简单,直接 ftp 替换就好
    Raincal
        8
    Raincal  
       2017-11-25 14:50:37 +08:00 via Android
    我一般用 daocloud
    assad
        9
    assad  
       2017-11-25 15:33:20 +08:00 via Android
    @ofnh 真麻烦
    panpanpan
        10
    panpanpan  
       2017-11-25 15:54:30 +08:00 via iPhone
    Docker 打好包推到阿里云,然后 ssh 到服务器上上去一个脚本。
    misaka19000
        11
    misaka19000  
       2017-11-25 17:00:44 +08:00 via Android
    gitlab 同步代码
    86322989
        12
    86322989  
       2017-11-25 18:16:58 +08:00 via iPhone
    说下 java web

    一 本地 git push
    二 mosh 连到服务器
    三 服务器上 git pull
    四 服务器上 maven 编译打包
    五 服务器上 docker 做新镜像 启动

    三之后都可以做到 shell 中 ,bash 搞定
    TangMonk
        13
    TangMonk  
       2017-11-25 18:17:52 +08:00 via Android
    rsync 没人用?
    mkeith
        14
    mkeith  
       2017-11-25 18:28:27 +08:00
    go build && rsync
    ofnh
        15
    ofnh  
       2017-11-25 19:34:45 +08:00 via Android
    @assad 涉及好几台服务器的部署,并不觉得麻烦,还省事了好多呢
    iVanilla
        16
    iVanilla  
       2017-11-25 19:40:16 +08:00 via Android
    Git + Docker
    simple2025
        17
    simple2025  
       2017-11-25 20:02:55 +08:00 via iPhone
    git push,ansible 脚本
    fox0001
        18
    fox0001  
       2017-11-25 20:30:38 +08:00
    代码管理,自建 git 服务。发布的话,不就是复制一下代码文件。
    gouchaoer
        19
    gouchaoer  
       2017-11-25 20:35:10 +08:00 via Android
    linux 的 cron 里面每分钟都 git pull,当然检测到 conflict 就报警咯,不做单元测试太麻烦
    noahziheng
        20
    noahziheng  
       2017-11-26 13:00:09 +08:00 via Android
    @whypool ssh 之后的部分可以用 pm2 deploy 简化,做点配置直接 pm2 deploy ecosystem.config.js production/dev 就能搞定
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2759 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 06:37 PVG 14:37 LAX 22:37 JFK 01:37
    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