В данной статье описаны основные шаги запуска MatrixDB через Docker Desktop и развертывание с использованием Hyper-V в Windows 10. В процессе установки может потребоваться перезагрузка системы дважды.
Щелкните правой кнопкой мыши меню «Пуск» и запустите PowerShell от имени администратора, выполните команду:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Откройте параметры Windows и перейдите в раздел «Приложения»

На правой стороне окна «Приложения и компоненты» нажмите на соответствующие параметры — «Программы и компоненты»

Нажмите «Включение или отключение компонентов Windows»

Установите флажок для активации Hyper-V

Нажмите кнопку «ОК», дождитесь завершения обновления Windows и перезагрузите компьютер

Официальный сайт загрузки Docker Desktop:
https://hub.docker.com/editions/community/docker-ce-desktop-windows
(Примечание: данная версия доступна только для операционной системы Windows 10 Professional, Enterprise, Education и некоторых домашних версий.)
Нажимайте «Далее» до конца, затем «Готово» для завершения установки



Если в процессе возникнут проблемы, как показано ниже, нажмите ссылку в окне подсказки

Следуйте инструкциям на странице, нажмите на ссылку (желтая область) на изображении ниже, чтобы загрузить и установить пакет обновления ядра Linux для WSL2, затем перезагрузите компьютер согласно указаниям.

Если вы видите следующий интерфейс, установка прошла успешно.

Кроме того, вы можете увидеть службу «Docker Desktop Service» в списке служб Windows

Запустите PowerShell или CMD от имени администратора в Windows, выполните docker --version, чтобы убедиться, что команда docker работает корректно.

Выполните в командной строке PowerShell или CMD:
docker pull matrixdb/centos7_demo

docker run -it -p 5432:5432 --name mxdemo matrixdb/centos7_demo
Основное описание параметров:
Измените файл конфигурации pg_hba.conf, чтобы разрешить внешний доступ к базе данных по имени пользователя и паролю.
vi /home/mxadmin/data/master/gpseg-1/pg_hba.conf
Добавьте в последнюю строку:
host all all 0.0.0.0/0 md5

Перезагрузите pg_hba.conf, чтобы изменения вступили в силу.
gpstop -u
[mxadmin@2e807ee654a2 ~]$ psql -d postgres
psql (12)
Type "help" for help.
postgres=# alter role mxadmin with password 'mxadmin';
ALTER ROLE
postgres=# create database testdb;
CREATE DATABASE
Текущая сессия — это сессия создания контейнера, поэтому прямой ввод команды exit для выхода из командной строки контейнера приведёт к остановке работающего контейнера Docker.
Правильный способ — использовать команду CTRL+D для выхода либо просто закрыть окно PowerShell.
Используйте команду docker start, добавив CONTAINERID, чтобы запустить контейнер. Обратите внимание, что в CONTAINERID нужно указывать только первые 4 символа.
Используйте команду docker ps, чтобы просмотреть CONTAINERID и запустить контейнер:
PS C:\Users\PaulWang> docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2e807ee654a2 matrixdb/centos7_demo "/home/mxadmin/entry…" 33 minutes ago Exited (0) 2 minutes ago mxdemo
PS C:\Users\PaulWang> docker start 2e80
2e80
Также можно нажать кнопку запуска в графическом интерфейсе Docker Desktop, чтобы запустить контейнер.

Вход под учётной записью root:
docker exec -it 2e87 /bin/bash
Вход под учётной записью mxadmin:
docker exec -it -u mxadmin 2e87 /bin/bash
Следующие команды управления используются для работы с базой данных (обратите внимание: используйте учётную запись mxadmin):
psql для доступа к базе данных в контейнере[mxadmin@2e807ee654a2 /]$ psql -d testdb
psql (12)
Type "help" for help.
testdb=# create table tb1(id int,name varchar(20)) distributed by(id);
CREATE TABLE
Используйте команду docker stop с указанием CONTAINERID для остановки работающего контейнера:
PS C:\Users\PaulWang> docker stop 2e80
2e80
Также можно нажать кнопку «Остановить» в графическом интерфейсе Docker Desktop, чтобы остановить контейнер.

В этой статье демонстрируется подключение к MatrixDB с помощью DBeaver.
Сначала скачайте бесплатную версию с официального сайта https://dbeaver.io/.
Выберите тип соединения «PostgreSQL»:

Заполните данные подключения к базе данных, включая имя пользователя и пароль.
(Обратите внимание: в данном случае порт контейнера Docker уже сопоставлен с сервером Windows, поэтому IP-адрес можно указать как localhost)

На вкладке PostgreSQL установите флажок «Show non-default databases».

Нажмите «Test Connection» или «OK», чтобы завершить настройку подключения.