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

使用一个简单的环境设置为一个WordPress的网站,一个本地AMP堆栈的发展,暂存环境审查/签退,最后一个生产环境,什么是最好的select快速移动环境?

local (dev) > staging > development

不同的开发者应该能够很容易地模拟网站(使用类似的服务器设置),然后在完成某个function时进行git操作。 (然后一个travis基于运行testing的提交开始)

然后,它必须很容易地移动到登台服务器,以便客户可以审查最终发布到生产。

阅读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' } } 

你可以在你的分期任务中join这个。

 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}