Skip to content

javaronok/rdb-docker

Repository files navigation

rdb-docker

Docker образ для RedDatabase версии 3.0

Сборка образа из Dockerfile

Собираем образ командой билд с именем centos-rdb-3.0 для версии RDB 3.0:

$ docker build . -t centos-rdb-3.0 --network host

Перед сборкой образа нужно проверить доступность URL сборок RDB: http://builds.red-soft.biz/release_hub/rdb30 В Docker файле образа можно настроить параметры дистрибутива, такие как версия релиза (RELEASE), сборка (BUILD) и архитектура проуессора (ARCH). Параметр --host позволяет запустить сборку в сети хост машины (необходимо для доступности ресурса сборок). Проверим что образ в реестре:

$ docker images | grep centos-rdb
centos-rdb-3.0                            latest              942a733054d3        1 hours ago        281MB

Запуск контейнерa

Запустим контейнер командой с пробросом портов и привязкой каталога с файлами БД:

$ docker run -itd --rm --name centos-rdb-30 -p 5050:3050 -v /srv/db/fb30:/data -e ALIAS_DB=test_db=test.fdb centos-rdb-3.0

RDB3 позволяет запуститься в одной из 3-ёх архитектурах сервера:

  • Super: исключительно один серверный процесс обслуживает все подключения, используя потоки для обработки запросов; общий пул для всех соединений; общий кеш страниц на уровне базы.
  • SuperСlassic: базы данных открываются одним серверным процессом, но доступ не исключительный - embedded процесс может открыть одновременно ту же базу; подключения обрабатываются потоками, запущенными из общего пула, каждый из которых имеет свой собственный страничный кэш базы данных.
  • Classic: отдельный процесс на каждое соединение с БД; каждая база данных может быть открыта несколькими процессами (включая локальные для embedded доступа); отдельный кеш страниц на каждое соединение

Проверим что контйнер запущен командой:

$ docker ps
CONTAINER ID  IMAGE            COMMAND                  CREATED             STATUS              PORTS                    NAMES
8aa7e8c66627  centos-rdb-3.0   "/docker-entrypoin..."   About an hour ago   Up About an hour    0.0.0.0:5050->3050/tcp   centos-rdb-30

Проверим утилитой isql что есть доступ к БД по порту 4050:

$ ./isql 'localhost/5050:test_db' -u sysdba -p masterkey

Для работы оповещений из БД нужно дополнительно указать TCP порт через параметр REMOTE_AUX_PORT из диапазона 6000-7000 и открыть его хост машине.

Загрузка образа в репозитарий DockerHub

Перед загрузкой авторизуемся командой docker login. После проставим тэг образу:

$ docker tag centos-rdb-3.0 javaronok/centos-rdb-3.0

и загрузим в репозиторий:

$ docker push javaronok/centos-rdb-3.0

Запуск контейнера на основе образа из DockerHub

Загружаем образ командой: docker pull javaronok/centos-rdb-3.0 и запускаем контейнер:

$ docker run -itd --name centos-rdb-30 -p 5050:3050 -v /srv/db/fb30:/data -e SERVER_MODE=Super javaronok/centos-rdb-3.0

About

RedDatabase Docker Image

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors