2011-10-20 61 views
2

我想玩弄Apache的couchdb作为我设计的Web应用程序的可能后端。因此,我希望有一个couchdb的实例,但也可以在测试完成时将其扔掉。开发计算机是Ubuntu笔记本电脑(不是服务器)。问题是:构建具有最小依赖关系的couchdb

  1. Ubuntu存储库有couchdb 1.0,但couchdb网站强烈建议安装1.1,从源代码构建。
  2. 我从源头上构建并安装了Erlang,因为来自存储库的Erlang发行版有缺陷。我认为在安装另一个Erlang时不会考虑这一点。
  3. couchdb有很多的依赖关系,包括一大堆perl库,我真的不需要,而且更喜欢当我完成时扔掉。

所以我正在寻找一种方式之一:

  1. 安装的CouchDB 1.1作为可以轻松卸载包,从源头
  2. 构建CouchDB的,以尽可能少安装的依赖关系,所以当我完成后,我可以删除它。最好不要构建另一个Erlang发行版,而是将其配置为使用现有发行版。

是否有这些可能,以及如何?提前致谢。

顺便说一句,我知道build-couchdb项目,但从我所读到的,它需要预先安装所有的构建依赖关系,这是不可取的,因为它会在我的系统中留下一大堆悬挂包,而不依赖于couchdb软件包。它还获取Erlang的副本,这对我来说是多余的。 (尊敬的版主:这个问题不仅与编程有关,还与服务器管理,Unix软件,特别是Ubuntu Linux问题有关,因此它可能适用于其他一些堆栈交换站点。因为这种黑客行为通常是由程序员完成的,但是如果我错了,请随时迁移它,并且我为你的问题提前道歉。)

回答

0

你可以将CouchDB安装到chroot监狱中

chroot是一种将应用程序与其他计算机隔离的方式,他们在监狱里。如果你正在测试这有可能创造一个chroot监牢

另一个选项改变重要的系统文件

Ubuntu instructions的应用程序,假设你的笔记本电脑有相应的硬件虚拟化支持,是这是特别有用使用KVM。

的KVM选择可能是从长远来看更有益,因为你可以在虚拟机的磁盘映像移动到服务器。