独家:在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 条评论
登录 后参与评论

相关文章

来自专栏Script Boy (CN-SIMO)

Qt入门之基础篇 ( 一 ) :Qt4及Qt5的下载与安装

转载请注明出处:CN_Simo. 导语: Qt是一个跨平台的C++图形界面应用程序框架。它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用...

7771
来自专栏菩提树下的杨过

WCF与IIS集成Windows身份验证的矛盾

好久没有上来了,最近跟着原来的老大一起跳到了一家新公司,在做一个新的交友项目,今天总算基本完成了。分享一个关于WCF的小技巧,由于项目中 很多地方用了Jquer...

2095
来自专栏大魏分享(微信公众号:david-share)

Openshift的高可用架构设计

第一部分:高可用设计 一、Openshift架构 ? Openshift架构如上图,其核心组件有: ●Multiple Masters ●External e...

8364
来自专栏腾讯云容器服务团队的专栏

K8S线上实战课堂第二期--入门Kubernetes的Deployment/Pod/Service

腾讯云K8S线上实战课堂,从0到1,结合方法论和实操演示,和大家一起快速入门和学习K8S和容器技术。今天推出第二期 从Hello World 了解Kuberne...

7337
来自专栏FreeBuf

Xshell系列软件被植入后门,请尽快更新到最新版本

Xshell是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET协议。Xshell 通过互联网...

3688
来自专栏JackeyGao的博客

使用DoMonit监控Docker

本篇的目的是介绍Python包Domonit, 一个基于Python语言开发的API封装的轻量监控程序.

1172
来自专栏大魏分享(微信公众号:david-share)

后容器时代技术制高点:API管理平台3Scale的架构设计与部署

9392
来自专栏皮振伟的专栏

[kvm][virt]PIO技术分析

前言: 基于KVM的设备虚拟化,就从这里开始吧。 分析: 1,PIO Port IO,所谓端口IO,x86上使用in、out指令进行访问。和内存的地址空间完...

3687
来自专栏李想的专栏

从零开始搭建腾讯云上的SpringBoot容器化应用

由于最近容器技术的火热,各大云计算厂商都已经提供了独立的容器服务,腾讯云也不例外。腾讯云容器服务的官方文档提供了一个基于Node.js的简单案例供大家上手,考虑...

1.4K12
来自专栏技术翻译

如何在DC / OS上构建高度可扩展的物联网平台

我最近一直在使用新的Percona-Server-MongoDB DC / OS服务,作为这项工作的一部分,我决定尝试使用Percona-Server-Mong...

1764

扫码关注云+社区

领取腾讯云代金券