克隆到本地虚拟机的VPS?

我对你们有一个有趣的挑战。 我正在合作的公司正在build立其开发/发布工作stream程和环境。 最终的生产环境是在Virtuozzo虚拟化环境中运行CentOS的VPS。

我们希望为每个开发人员的本地系统安装生产环境的虚拟化实例(或与之相近的东西)。 这将允许每个开发人员在他/她自己的系统上本地testing更改,而不会在出现问题时玷污其他​​人的系统。

显然,有很多方法可以做到这一点,但我想有一个更好的方法。 这是我需要你的帮助。

到目前为止,最好的select似乎如下。


导出/备份Virtuozzo VM。 将其下载到本地系统并将其安装到Virtuozzo容器中。

这是最干净/最纯粹的解决scheme,但可能无法正常工作。 例如,克隆的虚拟机仍然具有来自VPSnetworking的所有networkingconfiguration。 编写一个脚本来更新这些(以及其他任何旧的configuration值)是很困难的,所以它们更适合于本地VM吗?

将代码库部署到在任意虚拟化产品中创build的类似configuration的虚拟机。

这种方法不是那么干净,但我知道它可以工作(我以前做过)。 例如,我们可以将相同版本的CentOS,Apache,MySQL等安装到本地的VMWare虚拟机上。 环境不会与生产环境相同,但可能足够接近以使此工作stream程可行。

另外一个select?

你认为还有什么其他的select? 或者,这些select之一是最好的? 我很想听听你的想法! 🙂


编辑:

生产服务器上的多个cPanel /用户帐户

我联系了我们的VPS的客户支持,看看我是否可以访问Virtuozzo备份; 他拒绝了我们的请求,但build议我们可以尝试为每个开发人员创build一个单独的cPanel /用户帐户。 这将允许环境与服务器的环境相同,但会稍微不方便,因为环境将仍然远程运行而不是本地运行。 不过,一个体面的select。

这将完全适合你…

在源VM实例…

sudo su cd / tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys / 

在目标机器上(专用或VPS)

 tar xvpfz backup.tgz -C / 

并确保排除的任何dir被重新创build

 mkdir proc mkdir lost+found mkdir mnt mkdir sys 

您可以创build一个不错的Microsoft VirtualPC Linux映像,并将其发送给每个人