重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

标题: 自己准备一个非CDB的Oracle 19c docker 镜像 [打印本页]

作者: 郑全    时间: 2025-12-3 12:29
标题: 自己准备一个非CDB的Oracle 19c docker 镜像
本帖最后由 郑全 于 2025-12-3 12:32 编辑

默认创建的19c 镜像都包含了pdb,后续通过这个image创建的docker,是无法去掉这个pdb的,能否从image中去掉这个pdb,答案是肯定的
方法如下:

1.修改文件 dbca.rsp.tmpl

  cd docker-images/OracleDatabase/SingleInstance/dockerfiles/19.3.0
  vim dbca.rsp.tmpl
   ...

   createAsContainerDatabase=false
   numberOfPDBs=0
   
   ## 注释掉
   #pdbName=###ORACLE_PDB###
   #pdbAdminPassword=###ORACLE_PWD###


   # em关掉
   emConfiguration=NONE

2. 修改文件 createDB.sh
    在同一目录,如下语句:
  
    去掉下面这两行:
    ALTER PLUGGABLE DATABASE $ORACLE_PDB SAVE STATE;
    EXEC DBMS_XDB_CONFIG.SETGLOBALPORTENABLED (TRUE);
3. 修改文件 checkDBStatus.sh:
   在同一目录,如下语句:
   
   v\\$pdbs
   改为
   v\\$database


4. 创建镜像
进入docker-images/OracleDatabase/SingleInstance/dockerfiles 目录,执行命令:


./buildContainerImage.sh -v 19.3.0 -t oracle/database:19.3.0-se2n -s
5.验证
39174692fbd554b8d3.png
登录/注册后可看大图