轻松移动环境:deploybot,docker 还是手动 grunt/gulp 设置?

Easy moving of environments: deploybot, docker or manual grunt/gulp setup?

为 wordpress 网站使用直接的环境设置,为开发使用本地 AMP 堆栈,为 reviewing/signoff 使用暂存环境,最后使用生产环境,快速移动环境的最佳选择是什么?

local (dev) > staging > development

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

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

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

是的,Docker 对你想要的东西来说似乎有点矫枉过正,你可以使用 Grunt 和 grunt-ftp-deploy

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

我们以分期为例

'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 用于完整环境的持续部署。例如,您可以在 Docker 文件中执行类似的操作。

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}