默认创建的19c 镜像都包含了pdb,后续通过这个image创建的docker,是无法去掉这个pdb的,有时,我们希望创建的DOCKER,不包含PDB,能否做到呢?

答案是肯定的
步骤如下:

1.预备姿势

   自己如何动手创建oracle 19c 19.3标准版2 DOCKER 镜像

2.进入本地docker 仓库目录

cd docker-images/OracleDatabase/SingleInstance/dockerfiles/19.3.0


3.修改文件 dbca.rsp.tmpl
  
  vim dbca.rsp.tmpl
   ...

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


   # em关掉
   emConfiguration=NONE

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


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


./buildContainerImage.sh -v 19.3.0 -t oracle/database:19.3.0-se2n -s

7.验证

   运行docker,然后进行docker,检查数据库情况。具体步骤,可以参见前面的内容:

   oracle linux 9.6上安装oracle database 19.3 标准版 dockerhttps://blog.csdn.net/cqsztech/article/details/155558694?spm=1011.2415.3001.5331

  

更多推荐