独家:在MAC上运行Docker和Oracle 12.2数据库环境

虽然Docker是那么的流行和热闹,可是没想到我和Docker的第一次接触是因为Oracle。Oracle在上个月宣布支持Docker的容器部署,再加上Oracle Database 12.2的发布,再到支持MAC上的部署,大家可以想一想这足以激起我动手的热情,上一次在MAC上能够直接部署的版本还是Oracle 10g,现在我们有了一个新的选择。

基于Docker的部署简单到只需要一个命令,回顾一下我们在Oracle 8的年代,在Linux上部署Oracle,你想到什么?无数的编译错误,深深浅浅的坑坑洼洼,说多了都是泪。

看看Oracle在Docker上的部署吧!需要准备什么呢?

  1. Docker 环境下载;
  2. 从Github上下载 Oracle docker-images ;
  3. 从OTN下载 Oracle for Linux 的安装包;

生产资料具备了,还要做一点点粗加工:

  1. 在MAC上安装并启动Docker环境;
  2. 解压docker-images-master.zip安装包;
  3. 将Oracle安装包整合到Docker images Master中;

我在Docker市场下载的稳定版本,115.6M,地址是:

https://store.docker.com/editions/community/docker-ce-desktop-mac

虽然是第一次,但是看到这条小鲸鱼还是会很亲切:

第二和第三步,我建立了一个独立的Docker目录存储这些文件。

Github 上的文件下载地址是:

https://github.com/oracle/docker-images

然后两个命令:

unzip docker-images-master.zip mv linuxx64_12201_database.zip docker-images-master/OracleDatabase/dockerfiles/12.2.0.1/

接下来就可以撸起袖子加油干了,当然也可以不撸袖子,因为会非常顺利和流畅,我的MAC版本是:macOS sierra 10.12.4

这个环节就只需要一条命令,需要执行 docker-images-master/OracleDatabase/dockerfiles 下的build脚本:

./buildDockerImage.sh -v 12.2.0.1 -e

在这个步骤中首先需要安装 OEL的 Slim 版本:oraclelinux:7-slim 。需要从网上下载文件,所以安装过程中必须保持网络的连通。整个过程有16个步骤,全部是自动执行的。

成功的日志类似如下的:

Oracle Database Docker Image for 'ee' version 12.2.0.1 is ready to be extended: --> oracle/database:12.2.0.1-ee Build completed in 52755 seconds.

完成了安装之后,你拥有了两个镜像,一个是OEL 7-slim 版本,大约114MB,一个 oracle/database 大约14.8GB。

创建并启动数据库只需要一个命令:

docker run --name oracle -p 1521:1521 -p 5500:5500 -v /Users/eygle/oradata:/opt/oracle/oradata oracle/database:12.2.0.1-ee

这个命令有几个主要参数:

-p 指定端口映射,主机到Docker的端口对应; -v 指定数据库的对应存储路径,我指定了一个Docker之外的本地存储,将数据库独立出来。

完成这个命令,会在本地完成数据库的构建并启动数据库,同时输出告警日志的监控。

当然如果你不想剥离数据库文件出来,也可以用类似以下命令来构建数据库:

docker run -p 1521:1521 --name eygle oracle/database:12.2.0.1-ee

由于数据库缺省会指定用户口令,所以我们可以通过如下命令来修改口令:

docker exec oracle ./setPassword.sh youpassword

其他的必备命令是:

docker start oracle docker stop oracle docker logs oracle docker ps

接下来就可以在 SQL Developer 里配置和连接这个数据库了:

现在基于Docker来构建一个测试环境,变得非常快速和简捷,大家简化了学习了了解Oracle入门的复杂度,非常值得尝试。

大家快来一起探索一下Oracle的变化吧。更详细的信息请参考原文链接。


12.2体系架构图领取

绿色通道

Oracle 12.2 体系架构图在DTCC现场首发,受到广大技术朋友的喜欢。最近很多朋友们找我们申请,因此开放绿色通道,可以在线申请免费领取。

原文发布于微信公众号 - 数据和云(OraNews)

原文发表时间:2017-05-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

基于Wi-Fi的HID注射器,利用WHID攻击实验

WHID 代表基于 Wi-Fi 的 HID 注射器,即对 HID 攻击进行无线化攻击的一种注入工具。 实验攻击原理如下图: ? 攻击者使用ESP8266作为A...

3646
来自专栏醒者呆

虚拟化明星——深挖轻量级容器docker

docker是一个轻量级容器,属于操作系统层面的虚拟化技术,封装了文件系统(AUFS)以及网络互联,进程隔离等特性。 传统虚拟化架构: ? docker虚拟化架...

2818
来自专栏腾讯大讲堂的专栏

全民K歌后台编译优化:从40分钟到30秒

编者注 全民K歌上线1年半的从0发展到1.5亿,用户越来越多,后台代码库越来越大,编译速度也与日俱慢,编译一下整个工程需要30-40分钟,如何实现秒编至关重要。...

2555
来自专栏漫漫全栈路

Docker 初次见面

最近比较奇怪的事情就是,我一个英语四级都没过的人,居然恬不知耻的加入什么腾讯云的翻译社,翻译技术文章。结果当然是很奇妙的,一边死命的拿翻译工具机翻,一遍查阅资...

3608
来自专栏FreeBuf

PwnAdventure3:一款专为黑客而开发易受攻击的MMORPG游戏

Pwn Adventure 3的游戏场景设置在一座美丽的岛屿上,在这个岛上任何情况都有可能发生,例如飞行,无限游戏虚拟币等。

943
来自专栏美团技术团队

Docker 入门介绍

Docker简介 ---- Docker是DotCloud开源的、可以将任何应用包装在Linux container中运行的工具。2013年3月发布首个版本,当...

3308
来自专栏点滴积累

OpenStack(企业私有云)万里长征第六步——OpenStack网络及虚拟机存储位置

一、前言 昨天又装了一遍OpenStack。码农这项工作就如同人生,永远有你想不到的意外在等着你,时而是惊喜时而是悲伤。在装的过程中倒是很顺利,只是在安装完成之...

37610
来自专栏cloudskyme

WSO2 ESB(1)

什么是WSO2 ESB? WSO2 ESB是一个轻量级的易于使用的企业服务资源总线。WSO2 ESB允许系统管理员和SOA架构师,消息路由,虚拟化,中介,转换,...

3094
来自专栏FreeBuf

Lcx的多种用法:3个功能+9个参数,你会怎么玩?

*原创作者:ForWhat,本文属FreeBuf原创奖励计划,未经许可禁止转载 ? 前言 记得刚开始接触黑客技术的时候是2014年,那时候struts2漏洞利...

2616
来自专栏晨星先生的自留地

域控制器(1)之什么是域控

1755

扫码关注云+社区