LoginSignup
7
8

More than 5 years have passed since last update.

Docker で Oracle XEを動かしてHRスキーマを使えるようにする

Last updated at Posted at 2015-11-26

学校でOracleの学習をしていたら使うかもしれないhrスキーマ。
自分のマシンにOracle突っ込んで動かしっぱなしにするのもなぁ…ってことで使う時だけDockerで動かしてしまえ。っていう奴です。

環境はUbuntu 14.04.3(LTS)デスクトップ版を想定してます。

dockerのインストール

$ sudo apt install docker.io
$ sudo gpasswd -a ユーザー名 docker

ここまでやったら一度ログアウトする。(ターミナルの終了じゃ駄目)

oracle-xe-11gのインストール済イメージをpull

$ docker pull wnameless/oracle-xe-11g

一旦起動。

$ docker run -d -p 1521:1521 wnameless/oracle-xe-11g

hrスキーマを有効にする。

docker run後すぐは起動処理が走っていてsqlplusで接続できないことがあるため、2〜3分(マシンの性能にもよるけど)が経ってから実行すること。

$ sqlplus system/oracle@localhost/xe
SQL> ALTER USER hr ACCOUNT UNLOCK;
SQL> ALTER USER hr IDENTIFIED BY hr;
SQL> exit;

外部ファイルにしておいて@で読みこんでもOK。

hrスキーマを有効にしたdockerイメージを保存

$ docker ps -a
CONTAINER ID        IMAGE                            COMMAND                CREATED             STATUS                      PORTS                                      NAMES
29bf9c0d9861        wnameless/oracle-xe-11g:latest   "/bin/sh -c '/usr/sb   33 minutes ago      Up 33 minutes               22/tcp, 8080/tcp, 0.0.0.0:1521->1521/tcp   stupefied_perlman

CONTAINER IDに書かれてる文字列(ここでは29bf9c0d9861)を次のコマンドに指定します。

$ docker commit 29bf9c0d9861 oracle-xe-11g-hr

実行後にきちんと保存されていることを確認する。

$ docker images
REPOSITORY                TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
oracle-xe-11g-hr          latest              6e2467bff3ad        7 minutes ago       3.537 GB
wnameless/oracle-xe-11g   latest              0803d64ebc69        5 months ago        2.241 GB

以降使用したい時は

$ docker run -d -p 1521:1521 oracle-xe-11g-hr

で起動すること。

コンテナの停止

$ docker ps

して止めたいコンテナIDを確認して

$ docker stop コンテナID

で停止する。

hrスキーマへ接続

こちらも起動してから接続可能になるまで時間がかかるのでしばらく待つこと。

$ sqlplus hr/hr@localhost

参考サイト

あれ?

Dockerfile作ればいいのでは?と思ったけどうまくいかなかったので(

7
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
8