Menu
Imam Ferianto Blogs
  • Home
  • About
Imam Ferianto Blogs

Install Oracle 11g pada docker macos catalina

Posted on January 24, 2021January 24, 2021 by feri

Ini merupakan catatan singkat pribadi saja, bagaimana menginstall oracle 11g pada mac os catalina. Jika kurang jelas bisa ditanyakan ke email pada halaman contact saya.

Requirement yang dibutuhkan:

  1. docker
  2. socat
  3. xquarts

install docker sesuai petunjuk pada:

https://docs.docker.com/docker-for-mac/install/

install socat dengan brew

brew install socat

install xquartz

brew install --cask xquartz

buat folder docker

mkdir oracledocker
cd oracledocker
nano Dockerfile

isi file Dockerfile sebagai berikut:

#!/bin/bash
FROM oraclelinux:7-slim
RUN yum install -y firefox xterm oracle-rdbms-server-11gR2-preinstall net-tools nano
# Replace 0 with your user / group id
RUN export uid=0 gid=20
RUN mkdir -p /home/oracle
RUN echo "oracle:x:${uid}:${gid}:oracle,,,:/home/oracle:/bin/bash" >> /etc/passwd
RUN echo "oracle:x:${uid}:" >> /etc/group
RUN echo "oracle ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
RUN chmod 0440 /etc/sudoers
RUN chown ${uid}:${gid} -R /home/oracle

RUN echo "/usr/bin/xterm" > /home/oracle/init.sh
RUN chmod 755 /home/oracle/init.sh

USER oracle
ENV HOME /home/oracle
#CMD /usr/bin/firefox
#CMD /usr/bin/xterm
CMD /home/oracle/init.sh

jalankan docker-gui

pada cmd terminal build docker dengan perintah sebagai berikut:

cd oracledocker
docker build -t ol7_121:latest .

tunggu sampai build docker selesai, lihat images docker dengan perintah

docker image ls

copy file instalasi dari cd oracle misalnya pada folder

/Users/feri/Documents/oracle/docker/software/database

nanti kita akan mounting folder init sebagai folder instalasi pada docker.

buat folder untuk persistent storage dari database dengan perintah sbb

mkdir /Users/feri/Documents/oracle/db

jalankan socat untuk menerima request:

docker exec -u root -it ol7_121_con  bash

jalankan xquartz , pastikan settingan allow connection diaktifkan, sebagai berikut:

matikan firewal mac os sementara (opsional)

approve host request pada console

xhost +

jalankan docker dengan perintah pada terminal sebagai berikut:

docker run -dit --name ol7_121_con --shm-size="2G" \
-p 1521:1521 -p 5500:5500 -p 5911:5901 \
-e DISPLAY=host.docker.internal:0 \
-v /Users/feri/Documents/oracle/db:/u02 \
-v /Users/feri/Documents/oracle/docker/software/database:/mnt ol7_121:latest

lihat apakah docker sudah tercreate dan running dengan perintah:

docker ps -a

jalankan docker bila belum startup

docker start ol7_121_con

seharusnya akan terbuka window xterm seperti ini pada mac os:

selanjutnya jalankan instalasi oracle pada window xterm tersebut:

cd /mnt
./runInstaller

akan window instalasi oracle 11g pada mac os, jalankan instalasi next dan seterusnya, jika ada error ignore saja atau continue:

 

jika window xterm belum muncul, bisa akses console docker BASH sebagai root dengan perintah pada console mac

docker exec -u root -it ol7_121_con  bash

akses console docker. BASH sebagai user oracle

docker exec -u oracle -it ol7_121_con  bash

cara lain instalasi oracle dari console #bash. (login sebagai user oracle)

export ORACLE_BASE=/u02/app/oracle                                                \
    ORACLE_HOME=/u02/app/oracle/product/11.2.0.4/db_1                          \
    ORA_INVENTORY=/u02/app/oraInventory                                        \
    ORACLE_PASSWORD="oracle"                                                   \
    SCRIPTS_DIR=/u01/scripts                                                   \
    ORAENV_ASK=NO


cd /mnt
./runInstaller -waitforcompletion -ignoreSysPrereqs -ignorePrereq -silent \
   -templateName General_Purpose.dbc                                          \
    -gdbname ${ORACLE_SID} -sid ${ORACLE_SID} -responseFile NO_VALUE           \
    -characterSet AL32UTF8                                                     \
    -sysPassword ${SYS_PASSWORD}                                               \
    -systemPassword ${SYS_PASSWORD}                                            \
    -databaseType MULTIPURPOSE       \
    oracle.install.option=INSTALL_DB_SWONLY                                    \
    ORACLE_HOSTNAME=${HOSTNAME}                                                \
    UNIX_GROUP_NAME=oinstall                                                   \
    INVENTORY_LOCATION=${ORA_INVENTORY}                                        \
    SELECTED_LANGUAGES=en,en_GB                                                \
    ORACLE_HOME=${ORACLE_HOME}                                                 \
    ORACLE_BASE=${ORACLE_BASE}                                                 \
    oracle.install.db.InstallEdition=EE                                        \
    oracle.install.db.DBA_GROUP=dba                                            \
    oracle.install.db.KMDBA_GROUP=dba                                          \
    SECURITY_UPDATES_VIA_MYORACLESUPPORT=false                                 \
    DECLINE_SECURITY_UPDATES=true \
    -responseFile /mnt/response/db_install.rsp

Ok instalsi selesai , selanjutnya database akan tersimpan di folder mac os

/Users/feri/Documents/oracle/db

 

Social Media Links

  • Linkedin Profile
  • Facebook Profile
  • Instagram Profile
  • GitHub Pages
  • Google Play Portofolio
  • Postgresql Training Service
  • PHP Security Training Service
  • Active State Writing

Recent Posts

  • Ngoding Data Analytics di Handphone Part 2
  • Ngoding Data Analytics di Iphone Part 1
  • Cara Mudah Membuat Report Dengan Fastreport pada dotnet core project
  • Cara Alternatif mengakses Webservice Soap pada dotnet core tanpa menggunakan soap client
  • Tutorial Yii2 Singkat padat dan jelas untuk programmer pemula. Bagian 1 – Membuat Aplikasi Penjualan Menggunakan yii2

Archives

  • September 2022
  • May 2021
  • April 2021
  • March 2021
  • January 2021
  • September 2020
  • July 2020
  • June 2020
  • May 2020
  • March 2020
  • February 2020
  • December 2019

Categories

  • #dotnetcore
  • arduino
  • c#
  • data-analytics
  • docker
  • oracle
  • php
  • programming
  • python
  • selingan
  • Uncategorized
©2023 Imam Ferianto Blogs | Powered by WordPress & Superb Themes