先安装好docker,安装可以查看CentOS7用阿里云Docker Yum源在线安装Docker

找了个不错的oracle的镜像wnameless/oracle-xe-11g-r2,但是该镜像已经移出DockerHub

获取地址:https://github.com/wnameless/docker-oracle-xe-11g

1、克隆

$ git clone https://github.com/wnameless/docker-oracle-xe-11g.git

2、切换目录 

$ cd docker-oracle-xe-11g

3、运行 

$ docker run -d -p 1521:1521 -e ORACLE_ALLOW_REMOTE=true wnameless/oracle-xe-11g-r2

4、连接信息

hostname: localhost
port: 1521
sid: xe
username: system
password: oracle

其他:

在打开1521端口的情况下运行:

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

如果要远程连接数据库,请运行此命令:

docker run -d -p 49161:1521 -e ORACLE_ALLOW_REMOTE=true wnameless/oracle-xe-11g-r2

出于性能方面的考虑,您可能要禁用磁盘异步IO:

docker run -d -p 49161:1521 -e ORACLE_DISABLE_ASYNCH_IO=true wnameless/oracle-xe-11g-r2

使用默认密码xdb启用XDB用户,运行此命令:

docker run -d -p 49161:1521 -e ORACLE_ENABLE_XDB=true wnameless/oracle-xe-11g-r2

对于APEX用户:

docker run -d -p 49161:1521 -p 8080:8080 wnameless/oracle-xe-11g-r2
# Login http://localhost:8080/apex/apex_admin with following credential:
username: ADMIN
password: admin

对于最新的APEX(18.1)用户,请先拉wnameless / oracle-xe-11g-r2:18.04-apex:

docker run -d -p 49161:1521 -p 8080:8080 wnameless/oracle-xe-11g:18.04-apex
# Login http://localhost:8080/apex/apex_admin with following credential:
username: ADMIN
password: Oracle_11g

默认情况下,密码验证为禁用(密码永不过期),请
使用以下设置连接数据库:

hostname: localhost
port: 49161
sid: xe
username: system
password: oracle

SYS和SYSTEM的密码

oracle

支持自定义数据库初始化和运行外壳脚本

# Dockerfile
FROM wnameless/oracle-xe-11g-r2

ADD init.sql /docker-entrypoint-initdb.d/
ADD script.sh /docker-entrypoint-initdb.d/

运行顺序按字母顺序。