Navigate to :
docker-images/OracleDatabase/SingleInstance/dockerfiles
Download Oracle Database (12.2.0.1) from www.oracle.com:
and copy it to the directory (12.2.0.1):
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Result of "git clone https://github.com/oracle/docker-images.git" | |
/home/tteikhua/docker-images/OracleDatabase/SingleInstance>tree | |
. | |
├── COPYRIGHT | |
├── dockerfiles | |
│ ├── 11.2.0.2 | |
│ │ ├── checkDBStatus.sh | |
│ │ ├── Checksum.xe | |
│ │ ├── Dockerfile.xe | |
│ │ ├── runOracle.sh | |
│ │ ├── setPassword.sh | |
│ │ └── xe.rsp | |
│ ├── 12.1.0.2 | |
│ │ ├── checkDBStatus.sh | |
│ │ ├── checkSpace.sh | |
│ │ ├── Checksum.ee | |
│ │ ├── Checksum.se2 | |
│ │ ├── createDB.sh | |
│ │ ├── dbca.rsp.tmpl | |
│ │ ├── db_inst.rsp | |
│ │ ├── Dockerfile.ee | |
│ │ ├── Dockerfile.se2 | |
│ │ ├── installDBBinaries.sh | |
│ │ ├── installPerl.sh | |
│ │ ├── runOracle.sh | |
│ │ ├── runUserScripts.sh | |
│ │ ├── setPassword.sh | |
│ │ ├── setupLinuxEnv.sh | |
│ │ └── startDB.sh | |
│ ├── 12.2.0.1 | |
│ │ ├── checkDBStatus.sh | |
│ │ ├── checkSpace.sh | |
│ │ ├── Checksum.ee | |
│ │ ├── Checksum.se2 | |
│ │ ├── createDB.sh | |
│ │ ├── dbca.rsp.tmpl | |
│ │ ├── db_inst.rsp | |
│ │ ├── Dockerfile.ee | |
│ │ ├── Dockerfile.se2 | |
│ │ ├── installDBBinaries.sh | |
│ │ ├── linuxx64_12201_database.zip | |
│ │ ├── runOracle.sh | |
│ │ ├── runUserScripts.sh | |
│ │ ├── setPassword.sh | |
│ │ ├── setupLinuxEnv.sh | |
│ │ └── startDB.sh | |
│ ├── 18.3.0 | |
│ │ ├── checkDBStatus.sh | |
│ │ ├── checkSpace.sh | |
│ │ ├── Checksum.ee | |
│ │ ├── Checksum.se2 | |
│ │ ├── createDB.sh | |
│ │ ├── dbca.rsp.tmpl | |
│ │ ├── db_inst.rsp | |
│ │ ├── Dockerfile.ee | |
│ │ ├── Dockerfile.se2 | |
│ │ ├── installDBBinaries.sh | |
│ │ ├── runOracle.sh | |
│ │ ├── runUserScripts.sh | |
│ │ ├── setPassword.sh | |
│ │ ├── setupLinuxEnv.sh | |
│ │ └── startDB.sh | |
│ ├── buildDockerImage.sh | |
│ └── myoracle_docker.sh | |
├── FAQ.md | |
├── LICENSE | |
├── README.md | |
├── samples | |
│ ├── 12102-docker-compose | |
│ │ └── docker-compose.yml | |
│ ├── 12201-docker-compose | |
│ │ └── docker-compose.yml | |
│ ├── 1830-docker-compose | |
│ │ └── docker-compose.yml | |
│ ├── applypatch | |
│ │ ├── 12.1.0.2 | |
│ │ │ ├── Dockerfile.ee | |
│ │ │ ├── Dockerfile.se2 | |
│ │ │ └── patches | |
│ │ │ ├── 001 | |
│ │ │ └── applyPatches.sh | |
│ │ ├── 12.2.0.1 | |
│ │ │ ├── Dockerfile.ee | |
│ │ │ ├── Dockerfile.se2 | |
│ │ │ └── patches | |
│ │ │ ├── 001 | |
│ │ │ └── applyPatches.sh | |
│ │ ├── buildPatchedDockerImage.sh | |
│ │ └── README.md | |
│ ├── customdb | |
│ │ └── README.md | |
│ ├── customscripts | |
│ │ ├── 01_shellExample.sh | |
│ │ ├── 02_createUser.sql | |
│ │ ├── 03_addTable.sql | |
│ │ └── README.md | |
│ ├── plugpdb | |
│ │ └── README.md | |
│ ├── prebuiltdb | |
│ │ └── README.md | |
│ ├── README.md | |
│ ├── startersetcontainer | |
│ │ ├── README.md | |
│ │ └── starterset.sql | |
│ └── unplugpdb | |
│ └── README.md | |
└── tests | |
├── helperFunctions.sh | |
├── README.md | |
├── runAllTests.sh | |
├── runContainerTests112.sh | |
├── runContainerTests121.sh | |
├── runContainerTests122.sh | |
├── runContainerTests183.sh | |
├── runContainerTests.sh | |
└── runImageBuildTests.sh |
bash buildDockerImage.sh -v 12.2.0.1 -e
Output of installation is here (https://gist.github.com/tthtlc/d9825431eb13a4337c723411172b73da).
Upon completion of installation, a new docker image will be created:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
oracle/database 12.2.0.1-ee 49712d6a0946 3 hours ago 13.3 GB
And given the image ID above, we will connect via (and notice the password is given here):
docker run -it 49712d6a0946
ORACLE PASSWORD FOR SYS, SYSTEM AND PDBADMIN: anZERbg7P9k=1
LSNRCTL for Linux: Version 12.2.0.1.0 – Production on 30-MAR-2018 08:03:44Copyright (c) 1991, 2016, Oracle. All rights reserved.
Starting /opt/oracle/product/12.2.0.1/dbhome_1/bin/tnslsnr: please wait…
TNSLSNR for Linux: Version 12.2.0.1.0 – Production
System parameter file is /opt/oracle/product/12.2.0.1/dbhome_1/network/admin/listener.ora
Log messages written to /opt/oracle/diag/tnslsnr/8f14eca8ba12/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521)))Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER
————————
Alias LISTENER
Version TNSLSNR for Linux: Version 12.2.0.1.0 – Production
Start Date 30-MAR-2018 08:03:46
Uptime 0 days 0 hr. 0 min. 2 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /opt/oracle/product/12.2.0.1/dbhome_1/network/admin/listener.ora
Listener Log File /opt/oracle/diag/tnslsnr/8f14eca8ba12/listener/alert/log.xml
Listening Endpoints Summary…
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521)))
The listener supports no services
The command completed successfully
[WARNING] [DBT-10102] The listener configuration is not selected for the database. EM DB Express URL will not be accessible.
CAUSE: The database should be registered with a listener in order to access the EM DB Express URL.
ACTION: Select a listener to be registered or created with the database.
Copying database files
1% complete
13% complete
25% complete
Creating and starting Oracle instance
26% complete
30% complete
31% complete
It will continue to configure the database.
Checking the container ID:
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8f14eca8ba12 49712d6a0946 “/bin/sh -c ‘exec …” 11 minutes ago Up 11 minutes 1521/tcp, 5500/tcp nostalgic_murdock
Connecting to it:
docker exec -it 8f14eca8ba12 bash
[oracle@8f14eca8ba12 ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
none 825567656 304142320 479465912 39% /
tmpfs 16478564 0 16478564 0% /dev
tmpfs 16478564 0 16478564 0% /sys/fs/cgroup
/dev/sda2 825567656 304142320 479465912 39% /etc/hosts
shm 65536 0 65536 0% /dev/shm
tmpfs 16478564 0 16478564 0% /sys/firmware[oracle@8f14eca8ba12 ~]$ ps -ef|grep orac
oracle 1 0 0 08:03 ? 00:00:00 /bin/bash /opt/oracle/runOracle.sh
oracle 27 1 0 08:03 ? 00:00:00 /opt/oracle/product/LISTENER -inherit
oracle 2310 1 0 08:12 ? 00:00:00 ora_pmon_ORCLCDB
oracle 2312 1 0 08:12 ? 00:00:00 ora_clmn_ORCLCDB
oracle 2314 1 0 08:12 ? 00:00:00 ora_psp0_ORCLCDB
xxxxx
oracle 2818 1 0 08:12 ? 00:00:00 ora_qm02_ORCLCDB
oracle 2822 1 0 08:12 ? 00:00:00 ora_q002_ORCLCDB
oracle 2824 1 0 08:12 ? 00:00:00 ora_q003_ORCLCDB
oracle 2879 1 0 08:12 ? 00:00:00 tail -f /opt/oracle/diag/rdbms/orclcdb/ORCLCDB/trace/alert_ORCLCDB.log
oracle 2915 1 0 08:13 ? 00:00:00 ora_w002_ORCLCDB
oracle 2930 0 0 08:15 ? 00:00:00 bash
oracle 2949 2930 0 08:15 ? 00:00:00 ps -ef
oracle 2950 2930 0 08:15 ? 00:00:00 grep –color=auto orac
Finding out the TNS service name:
cd $ORACLE_HOME
cd network/admin/
cat tnsnames.ora
ORCLCDB=localhost:1521/ORCLCDB
ORCLPDB1=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCLPDB1)
)
)
So “ORCLCDB” is the name.
sqlplus system/anZERbg7P9k=1@ORCLCDB
SQL*Plus: Release 12.2.0.1.0 Production on Fri Mar 30 08:17:29 2018
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 – 64bit ProductionSQL> desc sys.tab$
Name Null? Type
—————————————– ——– —————————-
OBJ# NOT NULL NUMBER
DATAOBJ# NUMBER
TS# NOT NULL NUMBER
FILE# NOT NULL NUMBER
BLOCK# NOT NULL NUMBER
BOBJ# NUMBER
TAB# NUMBER
COLS NOT NULL NUMBER
CLUCOLS NUMBER
PCTFREE$ NOT NULL NUMBER
PCTUSED$ NOT NULL NUMBERSQL> select count(*) from sys.tab$;
COUNT(*)
———-
2149
Worked.
Now when you stop the container from another session:
Then the main session (which is this screen: https://gist.github.com/tthtlc/8e0a04ff958e0d0a12b6395195579a1c) will automatically shutdown the database.
https://gist.github.com/tthtlc/930e4264c602f4b7eea027ab71a5fd77
docker ps -a
docker start 8f14eca8ba12
docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8f14eca8ba12 49712d6a0946 “/bin/sh -c ‘exec …” 27 minutes ago Up 3 seconds 1521/tcp, 5500/tcp nostalgic_murdockdocker exec -it 8f14eca8ba12 bash[oracle@8f14eca8ba12 ~]$ ps -ef|grep ora
oracle 1 0 0 08:30 ? 00:00:00 /bin/bash /opt/oracle/runOracle.sh
oracle 13 1 0 08:30 ? 00:00:00 /opt/oracle/product/LISTENER -inherit
oracle 20 1 0 08:31 ? 00:00:00 ora_pmon_ORCLCDB
oracle 22 1 0 08:31 ? 00:00:00 ora_clmn_ORCLCDB
oracle 24 1 0 08:31 ? 00:00:00 ora_psp0_ORCLCDB
oracle 26 1 0 08:31 ? 00:00:00 ora_vktm_ORCLCDB
oracle 30 1 0 08:31 ? 00:00:00 ora_gen0_ORCLCDB
oracle 32 1 5 08:31 ? 00:00:00 ora_mman_ORCLCDB[oracle@8f14eca8ba12 ~]$ sqlplus system/anZERbg7P9k=1@ORCLCDB
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 – 64bit ProductionSQL>
Successful.
sqlplus system/anZERbg7P9k=1@ORCLCDB
SQL> show user
USER is “SYSTEM”
SQL> alter user system identified by manager;User altered.
sqlplus sys/anZERbg7P9k=1@ORCLCDB as sysdba
SQL> show user
USER is “SYS”SQL> alter user sys identified by manager;
User altered.
Completed:
You must be logged in to post a comment.