Install Oracle database on Docker

Часто возникает потребность в работе с БД Oracle. Существует множество способов установки данной БД. Однако, кто разворачивал Oracle из коробки, знает что такое танцы с бубном и наверняка изучил не один ритуал. Готовых решений от Sun Microsystems сейчас несколько, тем кому не подходим Oracle VM VirtualBox они предоставляют возможность использования образа Oracle Database Enterprise Edition на Docker Hub. Одним из преимуществ использования Docker является быстрая и простая подготовка. Я хотел попробовать быстро настроить и запустить базу данных Oracle Enterprise Edition для использования в среде разработки.

Использовал:

Docker Oracle Database EE Mac OS

Необходимо выполнить:
– Установка Docker на MacOs;
– Развертывание образа Oracle на Docker;
– Создать БД/Таблицы/Тестовые записи;
– Установить соединение с БД;

Первое, необходимо завести аккаунт на Docker Hub

Затем скачать и установить приложение: Docker Desktop

Теперь можно залогиниться через терминал. При первом входе необходимо ввести логин и пароль от аккаунта на Docker Hub.

docker login

Просмотр запущенных контейнеров

docker ps

Далее необходимо скачать образ Oracle Database Enterprise Edition с Docker Hub. Заполнить все поля.

docker pull store/oracle/database-enterprise:12.2.0.1

Запустить контейнер на основе скаченного образа Oracle:

docker run -d -p 1521:1521 --name oracle store/oracle/database-enterprise:12.2.0.1

Команда exec работает только для запущенных контейнеров и служит для выполнения команд внутри Docker-контейнеров, устанавливаем соединение.

docker exec -it oracle bash -c "source /home/oracle/.bashrc; sqlplus /nolog"

Подключимся к БД и создадим пользователя:

CONNECT sys AS sysdba;
-- password as 'Oradoc_db1'
ALTER SESSION SET "_ORACLE_SCRIPT"=TRUE;
CREATE USER gotoqa IDENTIFIED BY gotoqa;
GRANT ALL PRIVILEGES TO gotoqa;

Теперь можно подключаться к нашей созданной БД:

Username: gotoqa
Password: gotoqa
Hostname: localhost
Port: 1521
Service name: ORCLCDB.localdomain

В итоге, на все ушло минут 15 на старт Oracle Database в Docker-контейнере из коробки. На мой взгляд действительно самый быстрый способ начала работы с Oracle DB.

Releated Post