In this tutorial, we will show you how to install Apache CouchDB on Ubuntu 20.04 LTS. For those of you who didn’t know, CouchDB is an open-source project and NoSQL, document-oriented database server developed by the Apache Software Foundation. It has a document-oriented NoSQL database architecture and is implemented in the concurrency-oriented language Erlang; it uses JSON to store data, JavaScript as its query language using MapReduce, and HTTP for an API.
This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo
‘ to the commands to get root privileges. I will show you the step-by-step installation of Apache CouchDB on a Ubuntu 20.04 (Focal Fossa) server.
Prerequisites
- A server running one of the following operating systems: Ubuntu 20.04, 18.04, 16.04, and any other Debian-based distribution like Linux Mint.
- It’s recommended that you use a fresh OS install to prevent any potential issues.
- A
non-root sudo user
or access to theroot user
. We recommend acting as anon-root sudo user
, however, as you can harm your system if you’re not careful when acting as the root.
Install Apache CouchDB on Ubuntu 20.04 LTS Focal Fossa
Step 1. First, make sure that all your system packages are up-to-date by running the following apt
commands in the terminal.
sudo apt update sudo apt upgrade
Step 2. Installing Apache CouchDB on Ubuntu 20.04.
CouchDB is officially presented on the Ubuntu default repository. Run the following command to install Apache CouchDB:
sudo apt install couchdb
The installer will ask you whether you want to install CouchDB in clustered or standalone mode. A cluster means multiple servers connected together, working as a single, distributed data store.
During the installation, you should see messages to select some options:
┌──────────────────────────┤ Configuring couchdb ├──────────────────────────┐ │ │ │ Please select the CouchDB server configuration type that best meets your │ needs. │ │ For single-server configurations, select standalone mode. This will set │ up CouchDB to run as a single server. │ │ For clustered configuration, select clustered mode. This will prompt for │ additional parameters required to configure CouchDB in a clustered │ configuration. │ │ If you prefer to configure CouchDB yourself, select none. You will then │ need to edit /opt/couchdb/etc/vm.args and /opt/couchdb/etc/local.d/*.ini │ yourself. Be aware that this will bypass *all* configuration steps, │ including setup of a CouchDB admin user - leaving CouchDB in "admin │ │ │ │ └───────────────────────────────────────────────────────────────────────────┘
Next, select the standalone option and continue:
┌─────────┤ Configuring couchdb ├─────────┐ │ General type of CouchDB configuration: │ │ │ │ standalone │ │ clustered │ │ none │ │ │ │ │ │ │ │ │ └─────────────────────────────────────────┘
Next, type in the interface IP address and continue:
┌─────────────────────────┤ Configuring couchdb ├──────────────────────────┐ │ A CouchDB node must bind to a specific network interface. This is done │ │ via IP address. Only a single address is supported at this time. │ │ │ │ The special value '0.0.0.0' binds CouchDB to all network interfaces. │ │ │ │ The default is 127.0.0.1 (loopback) for standalone nodes, and 0.0.0.0 │ │ (all interfaces) for clustered nodes. In clustered mode, it is not │ │ allowed to bind to 127.0.0.1. │ │ │ │ CouchDB interface bind address: │ │ │ │ 127.0.0.1_______________________________________________________________ │ │ │ │ │ │ │ └──────────────────────────────────────────────────────────────────────────┘
Step 3. Accessing Apache CouchDB.
Apache CouchDB will be available on HTTP port 5984 by default. Open your favorite browser and navigate to localhost:5984/_utils/
and complete the required steps to finish the installation or run the following curl command that will print information about the CouchDB database in JSON format:
curl http://127.0.0.1:5984/
Results:
{ "couchdb":"Welcome", "version":"3.1.1", "git_sha":"ffeilanaa20", "uuid":"4589130c3BMW66330E463542ad4", "features":[ "access-ready", "partitioned", "pluggable-storage-engines", "reshard", "scheduler" ], "vendor":{ "name":"The Apache Software Foundation" } }
Congratulations! You have successfully installed CouchDB. Thanks for using this tutorial for installing Apache CouchDB on Ubuntu 20.04 Focal Fossa systems. For additional help or useful information, we recommend you to check the official CouchDB website.