Гид по технологиям

Установка Apache CouchDB на Ubuntu 18.04

• 3 min read • Базы данных • Обновлено 24 Nov 2025
Установка CouchDB на Ubuntu 18.04
Установка CouchDB на Ubuntu 18.04

О чём этот материал

CouchDB — это свободная документно-ориентированная NoSQL‑БД, реализованная на языке Erlang. Она хранит данные в формате JSON, поддерживает запросы через JavaScript (MapReduce) и предоставляет HTTP API. CouchDB использует многоверсионный контроль параллелизма, поэтому при записи файл базы не блокируется. Часто используется для репликации и синхронизации на мобильных устройствах.

Краткое определение: NoSQL — семейство баз данных, не основанных на реляционной модели; CouchDB — документная NoSQL‑СУБД.

Требования

  • Сервер с Ubuntu 18.04.
  • Пользователь с привилегиями sudo (не root).

Установка Apache

Перед установкой CouchDB нужно установить веб‑сервер Apache. Выполните:

sudo apt-get install apache2 -y

Запустите Apache и включите автозапуск:

sudo systemctl start apache2
sudo systemctl enable apache2

Важно: Apache не обязателен для работы CouchDB, но в некоторых окружениях его ставят для обратного проксирования или тестирования.

Установка CouchDB

По умолчанию пакет CouchDB может отсутствовать в стандартных репозиториях Ubuntu 18.04. Добавьте официальный репозиторий Apache CouchDB:

echo "deb https://apache.bintray.com/couchdb-deb xenial main" \ | sudo tee -a /etc/apt/sources.list

Подпишите репозиторий ключом:

curl -L https://couchdb.apache.org/repo/bintray-pubkey.asc \ | sudo apt-key add -

Обновите список пакетов и установите CouchDB:

sudo apt-get update -y
sudo apt-get install couchdb -y

Во время установки откроется интерактивная начальная конфигурация. Примеры экранов установки:

Экран установки CouchDB через apt

Выбор режима standalone для CouchDB

Привязка CouchDB к сетевому адресу

Установка пароля администратора

Повтор пароля администратора

После установки запустите сервис и включите автозапуск:

sudo systemctl start couchdb
sudo systemctl enable couchdb

Проверка статуса сервиса:

sudo systemctl status couchdb

Пример ожидаемого вывода:

? couchdb.service - Apache CouchDB
   Loaded: loaded (/lib/systemd/system/couchdb.service; enabled; vendor preset: 
   Active: active (running) since Sun 2018-06-10 20:22:25 IST; 45s ago
 Main PID: 3092 (beam)
   CGroup: /system.slice/couchdb.service
           ??3092 /opt/couchdb/bin/../erts-7.3/bin/beam -K true -A 16 -Bd -- -ro
           ??3119 /opt/couchdb/bin/../erts-7.3/bin/epmd -daemon
           ??3145 sh -s disksup
           ??3149 /opt/couchdb/bin/../lib/os_mon-2.4/priv/bin/memsup
           ??3150 /opt/couchdb/bin/../lib/os_mon-2.4/priv/bin/cpu_sup

Jun 10 20:22:25 Node1 systemd[1]: Started Apache CouchDB.
Jun 10 20:23:01 Node1 systemd[1]: Started Apache CouchDB.
Jun 10 20:23:04 Node1 systemd[1]: Started Apache CouchDB.

Доступ к веб‑интерфейсу CouchDB

CouchDB по умолчанию слушает порт 5984. Откройте в браузере:

http://your-server-ip:5984/_utils/

Вас перенаправит в интерфейс администратора Futon/Кабинет администрирования:

Веб-интерфейс CouchDB: экран входа

Введите имя администратора и пароль, затем нажмите Login. Вы попадёте в интерфейс управления базами:

Интерфейс управления базами CouchDB

Частые проблемы и способы их решения

  • CouchDB не запускается: проверьте журналы systemd и файлы в /opt/couchdb/log. Команда: sudo journalctl -u couchdb.
  • Порт 5984 недоступен: проверьте firewall (ufw) и правила iptables. Разрешите порт: sudo ufw allow 5984/tcp.
  • Ошибки в конфигурации: верните файл /opt/couchdb/etc/local.ini к корректному состоянию или пересоздайте конфигурацию.
  • Неправильная привязка интерфейса: на этапе установки выберите привязку к 0.0.0.0, если нужно удалённое подключение.

Важно: не открывайте порт 5984 в публичный интернет без дополнительной защиты (обратный прокси с аутентификацией, VPN, firewall).

Альтернативные способы установки

  • Docker: официальный образ couchdb из Docker Hub удобен для тестов и изоляции. Пример:
docker run -d --name couchdb -p 5984:5984 -e COUCHDB_USER=admin -e COUCHDB_PASSWORD=secret couchdb:latest
  • Пакеты из официальных дистрибутивов Ubuntu более старые; для новых функций используйте официальный репозиторий или контейнеры.

Безопасность и базовые рекомендации по харднингу

  • Установите сильный пароль администратора. Не используйте дефолтные учётные записи.
  • Закройте доступ к порту 5984 извне, если это не требуется. Используйте обратный прокси (Nginx) с TLS и аутентификацией.
  • Регулярно обновляйте пакеты и следите за CVE для выбранной версии CouchDB.
  • Для кластеров включайте репликацию только по защищённым каналам.

Контрольный список для развертывания (роль‑ориентированный)

  • Системный администратор: установить пакет, настроить systemd, включить бэкапы конфигурации.
  • Сетевой инженер: открыть необходимые порты в firewall, настроить обратный прокси если нужно.
  • Девопс/Разработчик: проверить доступ к HTTP API, настроить окружение для репликации и тестирование.

Критерии приёмки

  • Сервис CouchDB запущен и активен: sudo systemctl status couchdb показывает active (running).
  • Веб‑интерфейс доступен по http://IP:5984/_utils/ и позволяет выполнить вход.
  • Порт 5984 прослушивается и доступен (при необходимости) через firewall/прокси.
  • Создание и чтение документов через HTTP API работает.

Короткий глоссарий

  • Erlang — язык программирования, ориентированный на конкуренцию и отказоустойчивость.
  • JSON — формат обмена данными, используемый для хранения документов в CouchDB.
  • MapReduce — модель для распределённой обработки данных; в CouchDB используется для запросов.

Резюме

  • CouchDB хранит документы в JSON и предоставляет HTTP API на порту 5984.
  • На Ubuntu 18.04 используйте официальный репозиторий или Docker для установки.
  • Обеспечьте безопасность доступа: пароли, firewall, обратный прокси.

Важно: перед открытием сервиса в продакшн проведите тесты репликации, бэкапа и восстановления.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро