【问题标题】:Easy moving of environments: deploybot, docker or manual grunt/gulp setup?轻松移动环境:deploybot、docker 或手动 grunt/gulp 设置?
【发布时间】:2015-12-03 11:36:08
【问题描述】:

为 wordpress 网站使用简单的环境设置、用于开发的本地 AMP 堆栈、用于审核/签核的暂存环境以及最后的生产环境,快速迁移环境的最佳选择是什么?

local (dev) > staging > development

不同的开发人员应该能够轻松地模拟网站(使用类似的服务器设置),然后在他们完成功能后提交到 git。 (然后根据运行测试的提交启动 travis)

然后它必须可以轻松地移动到登台服务器,以便客户可以对其进行审核,最终将其发布到生产环境中。

阅读 Docker 的文档是符合要求的,但这似乎有点矫枉过正。

【问题讨论】:

    标签: wordpress git docker gruntjs gulp


    【解决方案1】:

    是的,Docker 对于你想要的东西来说似乎有点过头了,你可以用 Grunt 和 grunt-ftp-deploy 来做到这一点

    示例:
    您可以将任务添加到您的 grunt 文件中,用于开发、登台和生产。

    我们以 staging 为例。

    'ftp-deploy-staging': {
      build: {
        auth: {
          host: 'server.com',
          port: 21,
          authKey: 'key1'
        },
        src: 'path/to/git/folder',
        dest: '/path/to/staging/folder'
      }
    }
    

    您可以在暂存任务中添加它。

    grunt.registerTask('staging', 'Staging', function() {
        // do staging stuff
        grunt.task.run('do-staging-stuff');
        /**
         * etcetera
         */
    
        // send to FTP 
        grunt.task.run('ftp-deploy-staging');
    });
    

    关于 Docker:
    Docker 通常用于完整环境的持续部署。例如,您可以在 Dockerfile 中执行类似的操作。

    ENV HOME /usr/share/
    ENV GITURL github.com/something/something.git
    ENV GITNAME git_name_on_github
    ENV GITBRANCH master
    
    RUN cd ${HOME} && rm ./* && \
        git clone https://${GITACCESSTOKEN}@${GITURL} ${HOME} && \
        /usr/bin/git init && /usr/bin/git pull origin ${GITBRANCH}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-06-06
      • 1970-01-01
      • 2016-05-08
      • 1970-01-01
      • 1970-01-01
      • 2010-10-02
      相关资源
      最近更新 更多