This repo contains a Dockerfile to create an image with Oracle Database 11g Express Edition running in CentOS 7
The main reason for this repo is to have clean and transparent Dockerfile, without any magic behind.
It is based on official CentOS images and the build is completely described in the Dockerfile.
Unlike many other images on the Net this one uses stock rpm installer provided by Oracle, not repacked by alien
.
Let's assume that you are familar with Docker and building Docker images from Dockerfiles.
-
Download the rpm installer.
-
Unzip it and pack
oracle-xe-11.2.0-1.0.x86_64.rpm
intar.gz
archive namedoracle-xe-11.2.0-1.0.x86_64.rpm.tar.gz
so that it's contents look like:% tar -tf oracle-xe-11.2.0-1.0.x86_64.rpm.tar.gz oracle-xe-11.2.0-1.0.x86_64.rpm
-
Place the tarball inside the
rpm
directory of this repo. -
Run
docker build -t "madhead/docker-oracle-xe" .
from the root directory of this repo. -
You should get your image ready in a few minutes (apart from downloading base
centos:centos7
image).
During the configuration of Oracle XE instance two files - init.ora
and initXETemp.ora
- are overridden with ones from config
directory of this repo.
The only difference is that memory_target
parameter is commented in them to prevent ORA-00845: MEMORY_TARGET not supported on this system
error.
The only piece of magic in this image :).
Basically docker run -p 8089:8080 -p 1521:1521 -d madhead/docker-oracle-xe
will start new container and bind it's local ports 1521
and 8080
to host's 1521
and 8089
respectively.
Read Docker documentation for details.
Oracle Web Management Console (apex) will be available at http://localhost:8089/apex. Use the following credentials to login:
workspace: INTERNAL
user: ADMIN
password: oracle
Connect to the database using the following details:
hostname: localhost
port: 1521
sid: XE
username: system
password: oracle