oracle容器化docker解决方案
jrius
8年前
<p>1、只在数据库初始化与数据库迁移使用该方案,普通迭代还是走提交增量脚本</p> <p>2、data、log、oracle三合一服务</p> <p>data.tar 封装数据文件</p> <p>log.tar 封装日志文件</p> <p>oracle.tar 封装oracle应用依赖</p> <p>3、swarm生态圈oracle统一管理</p> <p>一个项目一个容器一个oracle</p> <p>统一管理监控每个节点oracle容器及服务</p> <p>背景:测试环境、预发布演示环境、生产环境、数据库老是不一致引起的种种问题。</p> <p>目标:测试环境、预发布演示环境、生产环境 一体化。</p> <p>技术目标:创建oracle源容器,DockerFile拉构建分支,oracle应用、数据文件、归档日志分离</p> <p>落地方案:</p> <p>一、创建oracle源容器</p> <p>应用安装oracle11g、sshd 同时暴露22、1521端口</p> <p>oracle应用初始体积其实不大才519M</p> <pre> [root@IT-4 ~]# docker images | egrep 'REP|1.0.1' REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE inits/zentao1.0.1 latest 9d59e6e43c90 3 weeks ago 2.379 GB inits/oracle1.0.1 latest 11c523474d5b 9 weeks ago 519.1 MB </pre> <p>二、启动一个容器指定22、1521端口,挂载data数据文件目录与归档日志目录</p> <p>docker run -d -p 2122:22 -p 1521:1521 -v /data/data:/data -v /data/log:/log --name oralce1 inits/oracle1.0.1</p> <p>-p 映射端口(宿主机端口:容器内部端口)</p> <p>-v 挂载目录(同上)</p> <p>--name 容器别名(用于服务集群)</p> <p>三、启动容器内oracle服务</p> <p>脚本:</p> <h2>start_oracle.sh</h2> <p>su - oracle</p> <p>sqlplus /nolog</p> <p>conn /as sysdba</p> <p>startup</p> <p>exit</p> <p>lsnrctl start</p> <p>exit</p> <p>docker exec oralce1 sh /root/start_oracle.sh</p> <p>四、转版本流程</p> <p>1、只在数据库初始化与数据库迁移使用该方案,普通迭代还是走提交增量脚本</p> <p>2、data、log、oracle三合一服务</p> <p>data.tar 封装数据文件</p> <p>log.tar 封装日志文件</p> <p>oracle.tar 封装oracle应用依赖</p> <p>--</p> <p>Best Regards</p> <p>王勇(WY)</p> <p>厦门市海沧区海沧大道893号泰地海西中心</p> <p>南京市玄武大道699-22号江苏软件园29栋</p> <p>Mail: <a href="/misc/goto?guid=4959676944716286275" rel="nofollow,noindex">wangyong@nfky.com</a></p> <p>固定电话:025-85557531转8120</p> <p>———————————————————————————————————————————</p> <p>本邮件及其附件为机密信息,仅供指定收件人使用。若收件有误,请立即回复本邮件知会发件人并将此邮件从</p> <p>你的计算机系统删除。</p> <p>This e-mail and any attachments are confidential. It is intended for the recipient only. If you have</p> <p>received this e-mail in error, please immediately notify the sender by replying to this e-mail and</p> <p>delete the e-mail from your computer.</p> <p> </p> <p>来自:http://dockone.io/article/1637</p> <p> </p>