# Подключение к базе данных Discourse через DBeaver

**URL:** https://meta.discourse.org/t/accessing-discourse-db-with-dbeaver/401507
**Category:** Community Building
**Created:** [25.Апрель.2026 06:28:25 UTC](https://meta.discourse.org/t/accessing-discourse-db-with-dbeaver/401507 "2026-04-25T06:28:25Z")
**Posts on this page:** 1
**Showing post:** 1

<div class="post-metadata">

### Author: ![Milton\_Htsin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/milton_htsin/32/521583_2.png) [@Milton\_Htsin](https://meta.discourse.org/u/Milton_Htsin)
#### Post date: [25.Апрель.2026 06:28:26 UTC](https://meta.discourse.org/t/accessing-discourse-db-with-dbeaver/401507/1 "2026-04-25T06:28:26Z")

</div>

Встроенный [Data Explorer](https://meta.discourse.org/t/32566?silent=true) подходит для быстрых запросов, но если вы хотите использовать полноценный GUI, такой как DBeaver или TablePlus, вам придётся преодолеть несколько препятствий, поскольку Postgres в Discourse находится внутри Docker bridge.

Вот как безопасно открыть доступ к нему через частную сеть (например, Tailscale), чтобы не оставлять вашу базу данных открытой для интернета.

### 1. Настройка произвольного порта

Discourse обычно занимает стандартные порты, поэтому я использовал `5434`. Отредактируйте файл `containers/app.yml`:

YAML

```plaintext
expose:
  - "80:80"
  - "443:443"
  - "5434:5432" # Хост 5434 -> Контейнер 5432

```

Затем пересоберите контейнер: `./launcher rebuild app`

### 2. Фаервол

**Не открывайте этот порт для публичного доступа.** Если вы используете Tailscale или другие туннели, ограничьте доступ только этим интерфейсом:

Bash

```plaintext
sudo ufw allow in on tailscale0 to any port 5434 proto tcp

```

### 3. Настройка аутентификации (самая неприятная часть)

По умолчанию Discourse использует аутентификацию `peer`, что блокирует вход по паролю извне. Поэтому нужно настроить Postgres на использование `scram-sha-256`.

Внутри контейнера (`./launcher enter app`):

Bash

```plaintext
echo "host all all 0.0.0.0/0 scram-sha-256" >> /shared/postgres_data/pg_hba.conf

sudo -u postgres psql -c "SELECT pg_reload_conf();"

```

### 4. Установка пароля

У пользователя `discourse` по умолчанию нет пароля. Установите его, чтобы приложения вроде DBeaver могли войти в систему.

Bash

```plaintext
sudo -u postgres psql -c "ALTER USER discourse WITH PASSWORD 'your_password_here';"

```

### 5. Данные для подключения

- **Хост:** Ваш IP-адрес

- **Порт:** `5434`

- **База данных:** `discourse`

- **Пользователь:** `discourse`

---

_[View the full topic](https://meta.discourse.org/t/accessing-discourse-db-with-dbeaver/401507)._
