PostgreSQL установка · 5 min read · Nov 20, 2025

Как установить PostgreSQL и pgAdmin4 на Ubuntu 18.04 LTS

pgAdmin4 — это инструмент управления PostgreSQL с открытым исходным кодом, разработанный для нескольких версий баз данных PostgreSQL. pgAdmin4 был создан со всеми функциями, которые можно найти на сервере PostgreSQL. Написан на Python и jQuery и может быть установлен на Windows, Mac и Linux. Он предоставляет несколько моделей развертывания, может быть установлен как настольное приложение или серверное приложение, работающее за веб-сервером, таким как Apache2.

В этом руководстве мы покажем вам установку и настройку pgAdmin4 в режиме сервера на сервере Ubuntu 18.04. pgAdmin4 будет работать как служба uWSGI за веб-сервером Apache, и мы охватываем обе установки pgAdmin4 из репозитория и из исходного кода.

Предварительные требования

  • Сервер Ubuntu 18.04
  • Привилегии root
  • Базовые знания установки PostgreSQL

Установка PostgreSQL на сервер Ubuntu 18.04

Сначала мы покажем вам базовую установку и настройку самой базы данных PostgreSQL. Ее можно установить из официального репозитория PostgreSQL и из стандартного репозитория Ubuntu.

Если вы хотите установить базу данных PostgreSQL из официального репозитория, добавьте ключ и репозиторий Postgres, выполнив следующие команды.

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -  
 sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'

После этого обновите все репозитории и установите PostgreSQL.

sudo apt update  
 sudo apt -y install postgresql postgresql-contrib

После установки войдите в систему под учетной записью по умолчанию, называемой ‘postgres’, и запустите интерфейс командной строки PostgreSQL ‘psql’.

su - postgres  
 psql

Теперь добавьте новый пароль для пользователя Postgres, выполнив следующий запрос в интерфейсе psql.

    ext{password postgres}  
 ВВЕДИТЕ ВАШ ПАРОЛЬ

Установка pgAdmin4 из репозитория

По умолчанию PostgreSQL предоставляет свой собственный репозиторий для установки пакетов pgAdmin4.

1. Добавьте репозиторий PostgreSQL

Скачайте ключ PostgreSQL и добавьте репозиторий, выполнив следующую команду.

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -  
 sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'

2. Установите pgadmin4

После этого обновите все доступные репозитории и установите пакеты pgAdmin4 с помощью команды apt ниже.

sudo apt update  
 sudo apt install pgadmin4 pgadmin4-apache2 -y

Во время установки вам будет предложено настроить имя пользователя электронной почты и пароль.

Введите свой собственный адрес электронной почты, который будет использоваться в качестве имени пользователя.

Затем введите пароль.

После завершения установки откройте веб-браузер и введите IP-адрес сервера, как показано ниже.

http://10.9.9.15/pgadmin4/

И вы увидите страницу входа в pgAdmin4. Войдите с помощью своего адреса электронной почты и пароля.

И вы получите панель управления pgAdmin.

Установка pgAdmin4 из исходного кода

Чтобы установить pgAdmin4 из исходного кода, нам нужно установить некоторые зависимости пакетов в систему и вручную настроить веб-сервер Apache для обслуживания службы pgAdmin4 uWSGI.

- Создать пользователя и директории

Прежде всего, мы хотим установить pgAdmin4 под не-root пользователем. Поэтому нам нужно создать нового пользователя и создать некоторые директории для pgAdmin4.

Создайте нового пользователя с именем ‘ahmad’, выполнив следующую команду.

useradd -m -s /bin/bash ahmad  
 passwd ahmad

Теперь создайте директорию журнала pgAdmin4 и директории данных для ‘sessions’ и ‘storage’.

mkdir -p /var/log/pgadmin4/  
 mkdir -p /var/lib/pgadmin4/{sessions,storage}

После этого измените владельца всех этих директорий на пользователя ‘ahmad’.

chown -R ahmad:ahmad /var/log/pgadmin4/ /var/lib/pgadmin4/

- Установите зависимости

Установите все необходимые зависимости пакетов, такие как Python, Python pip и virtualenv для установки pgAdmin4, выполнив следующие команды.

sudo apt install build-essential libssl-dev libffi-dev libgmp3-dev virtualenv python-pip libpq-dev python-dev -y

После этого установите веб-сервер Apache2 и mod_wsgi.

sudo apt install apache2 apache2-utils libapache2-mod-wsgi libexpat1 ssl-cert python -y

- Создайте виртуальную среду Python

Для этого руководства мы собираемся установить pgAdmin4 внутри виртуальной среды Python.

Войдите в систему под пользователем ‘ahmad’ и создайте новую виртуальную среду Python с именем ‘pgadmin4’.

su - ahmad  
 virtualenv pgadmin4

Теперь перейдите в директорию ‘pgadmin4’ и активируйте виртуальную среду.

cd pgadmin4/  
 source bin/activate

- Установите pgadmin4

Внутри виртуальной среды Python загрузите файл пакета pgAdmin4 whl.

wget https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v3.6/pip/pgadmin4-3.6-py2.py3-none-any.whl

Затем установите пакет с помощью команды pip.

pip install pgadmin4-3.6-py2.py3-none-any.whl

Подождите завершения установки pgAdmin4.

Чтобы запустить pgAdmin4 в ‘Server Mode’, нам нужно добавить дополнительную конфигурацию в директорию site-packages Python.

Перейдите в директорию ‘lib/python-version/site-packages/pgadmin4’ и создайте новый файл конфигурации с именем ‘config_local.py’.

cd lib/python2.7/site-packages/pgadmin4/  
 vim config_local.py

Вставьте следующую конфигурацию.

LOG_FILE = '/var/log/pgadmin4/pgadmin4.log'
SQLITE_PATH = '/var/lib/pgadmin4/pgadmin4.db'
SESSION_DB_PATH = '/var/lib/pgadmin4/sessions'
STORAGE_DIR = '/var/lib/pgadmin4/storage'
SERVER_MODE = True

Сохраните и закройте.

После этого запустите скрипт ‘setup.py’.

python setup.py

И вам будет предложено ввести конфигурацию электронной почты и пароля администратора. Введите свои данные, и установка pgAdmin завершена.

Примечание:

Если вы получите уведомление о том, что пакет ‘psycopg2’ будет переименован в следующем выпуске, просто установите бинарную версию пакета.

pip install psycopg2-binary

После этого деактивируйте виртуальную среду Python и измените владельца директорий журнала и данных pgAdmin4 на пользователя ‘www-data’.

deactivate

chown -R www-data:www-data /var/lib/pgadmin4/  
 chown -R www-data:www-data /var/log/pgadmin4/

- Настройка Apache2

Для этого руководства веб-сервер Apache2 будет использоваться в качестве обратного прокси для приложения uWSGI pgAdmin4.

Перейдите в директорию ‘/etc/apache2/sites-available’ и создайте новый файл виртуального хоста с именем ‘pgadmin4.conf’.

cd /etc/apache2/sites-available/  
 vim pgadmin4.conf

Измените ‘ServerName’ на свое собственное доменное имя и вставьте его.


    ServerName pgadmin.ahmad-labs.io
    LogLevel debug
    ErrorLog ${APACHE_LOG_DIR}/pgadmin-error.log
    CustomLog ${APACHE_LOG_DIR}/pgadmin-access.log combined

    LoadModule wsgi_module modules/mod_wsgi.so
    WSGIDaemonProcess pgadmin processes=1 threads=25 python-home=/home/ahmad/pgadmin4
    WSGIScriptAlias / /home/ahmad/pgadmin4/lib/python2.7/site-packages/pgadmin4/pgAdmin4.wsgi
 
    
        WSGIProcessGroup pgadmin
        WSGIApplicationGroup %{GLOBAL}
        Require all granted
    

Сохраните и закройте.

Теперь протестируйте конфигурацию и активируйте виртуальные хосты pgAdmin4.

apachectl configtest  
 a2ensite pgadmin4

Убедитесь, что ошибок нет, затем перезапустите службу Apache2.

systemctl restart apache2

Наконец, pgAdmin4 теперь работает как служба uWSGI за веб-браузером Apache.

Теперь откройте веб-браузер и введите доменное имя pgadmin.

http://pgadmin.hakase-labs.io/

И вы получите страницу входа в pgAdmin4, как показано ниже.

Подключение к базе данных PostgreSQL с помощью pgAdmin4

Войдите в панель управления pgAdmin4, используя свой адрес электронной почты и пароль.

Теперь нажмите кнопку ‘Добавить сервер‘, введите данные сервера PostgreSQL, к которому вы хотите подключиться.

И нажмите ‘Сохранить’.

После этого вы получите информацию о своей базе данных PostgreSQL на левой панели.

Наконец, pgAdmin4 теперь установлен на Ubuntu 18.04

Ссылки

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.