轻松移动环境: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}