
近几年来,Docker公司已然成为技术圈的小网红,但争论也较多,Anyway 不好主观臆断。
https://blog.pythian.com/docker-containers-oracle-data-integrator
受到Gleb Otochkin文章的启发,敲几个命令静下,让实践揭开下想象理解层的面纱。
准备云主机Centos 7.3 (host 阿里云 ,需Internet )
参考 Docker CE 安装文档
https://docs.docker.com/engine/installation/linux/docker-ce/centos
#sudo yum remove docker docker-common docker-selinux docker-engine
#yum remove docker-ce
#sudo yum install -y yum-utils device-mapper-persistent-data lvm2
#sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
#sudo yum-config-manager --enable docker-ce-edge
#sudo yum-config-manager --enable docker-ce-edge
#sudo yum-config-manager --enable docker-ce-test
#sudo yum install docker-ce
#service docker start
So easy 完成Docker安装
下载 Docker Oracle image (现github已有各种image版本可以挑选)
这里我们使用jaspeen分享的image 测试安装oracle11g DB(https://github.com/jaspeen/oracle-11g)
#docker pull jaspeen/oracle-11g

(history log)
下载 Oracle 11gr2
http://www.oracle.com/technetwork/database/enterprise-edition/downloads
安装介质解压到 /software/oracle11gr2
好了,可以安装曾经麻烦的数据库啰(装过都知道), 现只要1个命令
#sudo docker run -d --privileged --shm-size 1g --name oracle11g -p 1521:1521 -v software/oracle11gr2:/install -v backup:/opt/oracle/dpdump -v etc/localtime:/etc/localtime:ro jaspeen/oracle-11g
命令会输出容器唯一id
8af0a5d100964d9bca0c0d1f184c3a93a26ce2908f8d614d088ffb066b1c47a1
也可以看容器id
#docker ps -s
解决安装过程问题
注意看下github上其他人安装遇到Issues(https://github.com/jaspeen/oracle-11g/issues/6)
所以一样容器安装数据库会中断
一样要更正下作者的 db_install.rsp ,copy 正确的更新容器脚本文件
#docker cp software/db_install.rsp 8af0a5d10096:/assets/db_install.rsp
再重新启动容器,重装会自动继续
#docker container start 8af0a5d10096
后面等待时间可以来杯星巴克,看安装日志进度了
#docker logs 8af0a5d10096
解决安装过程问题
解决建库问题
创建数据库 76% 显示遇到的bug,初装不可避免
,research错误为oracle bug 9294055 (http://blog.csdn.net/xiangsir/article/details/18740803),so ok,reinstall 重建容器,还满方便,delete first
#docker rm 8af0a5d10096
回到第6,7步命令重来
。。。。。
进入容器
#docker exec -it 8af0a5d10096 /bin/bash
#su - oracle
$sqlplus as sysdba
SQL> alter system set JAVA_JIT_ENABLED= FALSE
(调整当前session)
看日志
#docker logs 8af0a5d10096
显示100%数据库安装ok,可以根据应用需要进一步sqlplus调整数据库参数了,不用提注意看下alert log。
系统 TOP, 看上去很OK


感受复杂数据库的安装,像买个冰箱样开箱即用又迈进了一步,也许还有很多马拉松,但快速发展,披星戴月,趋势难挡,Docker “加速器” images 共享结果,大大的压缩了系统集成的时间,同时也提高了最终系统应用的交付效率,容器无疑也给OS打了一剂强心针。

享受公司赞助及组织的比赛





