Help us understand the problem. What is going on with this article?

dockerでOracle Database18cの開発環境構築してみた

背景

とある調査を実施のためにlocalにOracle Databaseを構築してみました、という話です。
今回は、その備忘録です。

開発環境

  • Windows10
  • Docker Desktop for Windows
  • Oracle Database 18c (18.3.0) Express Edition (XE)

手順

  1. oracle databeseの公式repositoryを取得

    docker imageをbuildするためのscriptは、Oracleがgithub上で公開をしています。今回は、そのscriptを利用してdocker imageの作成を行います(手順は後述)。

    cd ${projecty root}/build/docker/oracle/
    git clone https://github.com/oracle/docker-images.git
    
  2. oracle database本体の取得

    oracle database 18c(18.3.0)にて公開されているバイナリを取得します。

    キャプチャ_oracle database18.3.0バイナリ取得元.PNG

  3. downloadファイルを配置

    cd ${projecty root}/build/docker/oracle/docker-images/OracleDatabase/SingleInstance/dockerfiles/18.3.0
    cp ~/Download/linu.x64_180000_db_home.zip .
    
  4. docker imageのbuild

    git cloneで取得したshell scriptにて、docker imageを作成します。

    cd ${projecty root}/build/docker/oracle/docker-images/OracleDatabase/SingleInstance/dockerfiles
    sh biuldDockerImage.sh -v 18.3.0 -e
    

    以下のメッセージが出力されることを確認できれば、docker imageの作成を行います。

    Oracle Database Docker Image for 'ee' version 18.4.0 is ready to be extended:
    
    --> oracle/database:18.4.0-ee
    
    Build completed in 928 seconds.
    

    ここで、以下のエラーが発生した場合は、docker imageを作成する際に実行するshell scriptの改行コードがLFからCRLFに変更されている可能性があります。対象のshell scriptの改行コードをLFにします。

    MD5 for required packages to build this image did not match!
    Make sure to download missing files in folder 18.3.0.
    
  5. imageの出力確認

    作成されたdocker imageを確認します。

    docker images
    REPOSITORY                                          TAG                 IMAGE ID            CREATED             SIZE
    oracle/database                                     18
    3.0-ee         c90d8241c96d        3 hours ago         5.98GB
    ...省略...
    
  6. docker-compose.ymlに構成の記述

    version: '2'
    
    services:
      db:
        image: oracle/database:18.3.0-ee
        environment:
          ORACLE_SID: ORCL
          ORACLE_PDB: SAMPLE
          ORACLE_PWD: password
          ORACLE_CHARACTERSET: AL32UTF8
          ORA_SDTZ: Japan
        ports:
          - "1521:1521"
          - "5500:5500"
        volumes:
          - ./build/docker/oracle/oradata:/opt/oracle/oradata
    
  7. docker containerの起動

    docker-composeコマンドでcontainerの起動をします。
    なお、この処理には時間がかかります。(30分程度)

    docker-compose up -d
    

    起動が確認できれば、構築は完了です。
      

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした