本文指导如何使用oracle的官方镜像安装部署oracle12c
操作步骤注册docker账号
oracle12的官方镜像需要有docker账号才能有权限进行下载
docker 登录使用docker login,通过docker账号登录到dockerhub
# docker login Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one. Username: xiaojinran Password: WARNING! Your password will be stored unencrypted in /root/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded镜像下载
# docker pull store/oracle/database-enterprise:12.2.0.1 12.2.0.1: Pulling from store/oracle/database-enterprise 4ce27fe12c04: Pull complete 9d3556e8e792: Pull complete fc60a1a28025: Pull complete 0c32e4ed872e: Pull complete b465d9b6e399: Pull complete Digest: sha256:40760ac70dba2c4c70d0c542e42e082e8b04d9040d91688d63f728af764a2f5d Status: Downloaded newer image for store/oracle/database-enterprise:12.2.0.1 docker.io/store/oracle/database-enterprise:12.2.0.1运行Oracle
为了使外部可以通过端口进行访问内部数据库,以及持久化保存oracle数据,这里将容器的1521端口以及oracle的数据卷映射到宿主机。
官方提供镜像文件还有很多可选的参数配置,可以通过docker hub进行了解和使用
# docker run -d -it --name oracleDB -v /opt/Projects/oracle12c/DBdata:/ORCL -p 41521:1521 store/oracle/database-enterprise:12.2.0.1 ec6ce278e303fba4613e0a636fb0fbc646504e49324c5f41ceeaad6e256761e7使用Oracle
通过docker exec 可以进入到容器内部,这样就可以使用容器内部的数据库了
# docker exec -it oracleDB /bin/bash
$ sqlplus / as sysdba
SQL*Plus: Release 12.2.0.1.0 Production on Sat Nov 27 02:42:49 2021
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ onLY NO
3 ORCLPDB1 READ WRITE NO
总结
通过docker镜像部署oracle12c是不是很方便,不用去考虑那么多参数的设置和环境变量,官方就已经通过容器封装好了一个镜像了,这就是容器的便利之处。



