1.拉取oracle镜像文件
docker pull wnameless/oracle-xe-11g
2.创建oracle的docker卷
docker volume create oralce
3.新建并运行ORACLE容器
docker run -d --name oracle \
-p 49160:22 \
-p 49161:1521 \
-e ORACLE_ALLOW_REMOTE=true \
-v oracle:/u01/app/oracle \
--restart=always \
--volume /etc/localtime:/etc/localtime:ro \
wnameless/oracle-xe-11g
3.配置PL/SQL Developer
在instance client目录中新建名为network的文件夹,并在network目录下新建admin文件夹,在admin文件夹下新建tnsnames.ora文件,使用记事本编写:
xe =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.23)(PORT = 49161))
(CONNECT_DATA =
(SERVICE_NAME = XE)
)
)
其中第一行中的XE是oracle数据库的实例名。
SERVICE_NAME后填写oracle的服务名,可在容器中用lsnrctl status查看,这里我们填写XE。
打开PL/SQL Developer客户端(此时仍无法登陆,关闭登录窗口以未登录状态打开即可),选择Tools-》Preferences,将Oracle Home和OCI Liabrary两栏中填入instance client所在的路径和OCI文件所在路径(oci.dll在instance client目录下),重启PL/SQL Developer。
至此,你就可以使用如下信息登录Oracle数据库了:
username: system
password: oracle