逆引きマニュアル: DockerでOracleデータベースを使用する方法

投稿日: 更新日:

やりたいこと

DockerでOracleデータベースを使用する方法です。

前提条件

Express Editionを使います。

概要

公式のリポジトリを使います。

手順

ビルド

  1. 事前にダウンロードする(Oracleアカウント必須)。
  2. 以下のコマンドを実行
git clone https://github.com/oracle/docker-images.git oracle
cd oracle/OracleDatabase/SingleInstance/dockerfiles

# 事前にダウンロードしたExpress Editionのzipファイルを移動
mv /path/to/oracle-xe-11.2.0-1.0.x86_64.rpm.zip 11.2.0.2

# ビルド
./buildDockerImage.sh -x -v 11.2.0.2

これで以下の内容で作成されます。 ビルドにかかった時間は94秒、容量は1.13GBでした。

  • リポジトリ: oracle/database
  • タグ: 11.2.0.2-xe

ビルドにはOrace Linux(oraclelinux:7-slim)が使われるようです。

実行

起動方法は以下を参照。 環境にもよりますが、1分15秒ほどかかりました。

Running Oracle Database Express Edition in a Docker container

以下のようにして接続できます。

  • SID: XE
  • User: system
  • Password: 起動時に設定したもの

コンテナ内部からのsqlplusによる接続は以下のような感じ。

sqlplus sys/パスワード@localhost/XE as sysdba

補足

XEではUTF-8固定なので、他のエンコーディングを使用する場合は、 以下の方法を使う必要があります(未確認)。

マニュアル