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>