如何在CentOS6x64VPS上从源代码安装CouchDB
状态:已弃用
本文介绍了不再受支持的 CentOS 版本。 如果您目前正在运行运行 CentOS 6 的服务器,我们强烈建议您升级或迁移到受支持的 CentOS 版本。
原因:CentOS 6 已于 2020 年 11 月 30 日结束生命周期 (EOL) ,不再接收安全补丁或更新。 因此,不再维护本指南。
请参阅:本指南可能仍可用作参考,但可能不适用于其他 CentOS 版本。 如果可用,我们强烈建议使用为您正在使用的 CentOS 版本编写的指南。
介绍
CouchDB 是由 Apache 软件基金会开发的 NoSQL 数据库,它使用 JSON 作为文档,JavaScript 用于 MapReduce 查询,常规 HTTP 用于 API。 通常被称为“完全包含网络的数据库”,由于其灵活性和可扩展性,它被许多初创公司和公司使用。
截至本教程,CouchDB 的当前稳定版本为 1.4.0。
建议先完成 Initial Server Setup with CentOS 6 教程,然后再开始此教程。
第 1 步 - 在您的 VPS 上安装构建工具
为了从源代码编译 CouchDB,您需要在虚拟服务器上安装一些工具和依赖项。
您需要做的第一件事是将软件包更新到最新版本:
sudo yum -y update
接下来,您必须安装开发工具:
sudo yum -y groupinstall "Development Tools"
以及编译 CouchDB 所需的依赖项:Erlang 和 SpiderMoney:
sudo yum -y install libicu-devel curl-devel ncurses-devel libtool libxslt fop java-1.6.0-openjdk java-1.6.0-openjdk-devel unixODBC unixODBC-devel openssl-devel
第 2 步 - 安装 Erlang
CouchDB 需要 Erlang。 CentOS 团队不提供任何官方软件包,因此您必须从源代码编译它。
首先,去www.erlang.org/download.html下载最新的源代码。
wget http://www.erlang.org/download/otp_src_R16B02.tar.gz
下载完成后,解压缩存档:
tar -zxvf otp_src_R16B02.tar.gz
现在我们已经解压了 Erlang 源代码,我们可以开始编译它了:
cd otp_src_R16B02 ./configure && make
接下来,您必须安装它。 默认情况下,Erlang 将安装在 /usr/local 中:
sudo make install
第 3 步 - 安装 SpiderMonkey JS 引擎
CouchDB 需要 Mozilla 的 SpiderMoney JavaScript 引擎才能成功编译。
CouchDB 需要 Mozilla 的 SpiderMoney 1.8.5 版,您可以从他们的 FTP 下载:
wget http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz
下载完成后,解压压缩包:
tar -zxvf js185-1.0.0.tar.gz
下一步是在您的 VPS 上编译并安装它:
cd js-1.8.5/js/src ./configure && make sudo make install
第 4 步 - 安装 CouchDB
在满足所有依赖项之后,安装 CouchDB 非常简单。
首先,您必须下载并解压缩 CouchDB 源代码:
wget http://apache.osuosl.org/couchdb/source/1.4.0/apache-couchdb-1.4.0.tar.gz tar -zxvf apache-couchdb-1.4.0.tar.gz
解压源代码后,我们就可以开始编译了。 这应该只需要几分钟:
cd apache-couchdb-1.4.0 ./configure && make
如果一切正常,我们现在可以安装 CouchDB:
sudo make install
第 5 步 - 设置 CouchDB
安装 CouchDB 后,您必须创建 CouchDB 用户,设置适当的权限并添加启动脚本。
让我们从添加 couchdb 用户开始:
sudo adduser --no-create-home couchdb
couchdb 用户必须具有适当的权限才能访问一些目录:
sudo chown -R couchdb:couchdb /usr/local/var/lib/couchdb /usr/local/var/log/couchdb /usr/local/var/run/couchdb
接下来,我们必须为 couchdb 初始化脚本创建一个到 /etc/init.d 的链接:
sudo ln -sf /usr/local/etc/rc.d/couchdb /etc/init.d/couchdb
如果您希望 CouchDB 在启动时自动启动,请在 chkconfig 中添加并启用 init 脚本:
sudo chkconfig --add couchdb sudo chkconfig couchdb on
默认情况下,只能从 VPS 本身访问 CouchDB。 如果您想从 Web 访问它,则必须更改配置文件。
在编辑器中打开配置文件:
sudo nano /usr/local/etc/couchdb/local.ini
如果您需要从 Web 访问 couchdb,请在 [httpd] 部分中查找名为 bind_address 的设置并将其更改为 0.0.0.0 - 这将使 CouchDB 绑定所有可用地址。
[httpd] port = 5984 bind_address = 0.0.0.0
现在我们准备启动 CouchDB:
sudo service couchdb start
要验证 CouchDB 是否正在运行,请在端口 5984 上连接到它:
curl http://localhost:5984
您应该会看到如下响应:
{"couchdb":"Welcome","uuid":"a9e7db070cfe85e6a770aa254c49c8c3","version":"1.4.0","vendor":{"name":"The Apache Software Foundation","version":"1.4.0"}}
确认您的服务器已启动并运行后,您可以在浏览器中通过 http://your.DO.IP.address:5984/_utils 访问它。