工作中需要频繁使用Oracle环境,但是每次搭建起来比较消耗时间,本想通过虚拟机模板的方式来快速安装oracle vm,但是每次改ip等环境也很耗时,因此想到docker中有没有已经做好的images,这样就能快速获得Oracle环境。

root@- rac1:docker search oracle

INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED

docker.io docker.io/wnameless/oracle-xe-11g Oracle Express 11g R2 on Ubuntu 16.04 LTS  [OK]

docker.io docker.io/oraclelinux Oracle Linux is an open-source operating s...  [OK]

docker.io docker.io/alexeiled/docker-oracle-xe-11g This is a working (hopefully) Oracle XE ...  [OK]

docker.io docker.io/sath89/oracle-12c Oracle Standard Edition 12c Release  with...  [OK]

docker.io docker.io/sath89/oracle-xe-11g Oracle xe 11g with database files mount su...  [OK]

docker.io docker.io/isuper/java-oracle This repository contains all java releases...  [OK]

docker.io docker.io/jaspeen/oracle-11g Docker image for Oracle 11g database  [OK]

docker.io docker.io/oracle/oraclelinux Oracle Linux is an open-source operating s...  [OK]

docker.io docker.io/ingensi/oracle-jdk Official Oracle JDK installed on CentOS.  [OK]

docker.io docker.io/airdock/oracle-jdk Docker Image for Oracle Java SDK ( and )...  [OK]

docker.io docker.io/oracle/openjdk Docker images containing OpenJDK Oracle Linux  [OK]

docker.io docker.io/cogniteev/oracle-java Oracle JDK , , , and  based on Ubuntu ...  [OK]

docker.io docker.io/n3ziniuka5/ubuntu-oracle-jdk Ubuntu with Oracle JDK. Check tags for ver...  [OK]

docker.io docker.io/andreptb/oracle-java Debian Jessie based image with Oracle JDK ...  [OK]

docker.io docker.io/oracle/glassfish GlassFish Java EE Application Server on Or...  [OK]

docker.io docker.io/oracle/nosql Oracle NoSQL on a Docker Image with Oracle...  [OK]

docker.io docker.io/infogene/oracle Image for running Oracle Database 11g Stan...  [OK]

docker.io docker.io/openweb/oracle-tomcat A fork off of Official tomcat image with O...  [OK]

docker.io docker.io/flurdy/oracle-java7 Base image containing Oracle's Java 7 JDK 4 [OK]

docker.io docker.io/jtech/oracle-jdk A Docker image based on the smallest Linux...  [OK]

docker.io docker.io/davidcaste/debian-oracle-java Oracle Java  (and ) over Debian Jessie  [OK]

docker.io docker.io/kaluzki/oracle kaluzki/oracle  [OK]

docker.io docker.io/clincase/oracle clincase oracle db server image  [OK]

docker.io docker.io/jckrz/debian-oracle-jdk Vanilla Debian + Oracle JDK  [OK]

docker.io docker.io/publicisworldwide/oracle-core This is the core image based on Oracle Lin...  [OK]

可以看到有很多版本,11g,12c

这里选择获取12c版本

root@- rac1:/home/# docker pull sath89/oracle-12c

Using default tag: latest

latest: Pulling from sath89/oracle-12c

863735b9fd15: Pull complete 

4fbaa2f403df: Pull complete 

faadd00cf98e: Downloading [=======>                                          ] 394.8 MB/2.768 GB

829e2e754405: Download complete 

root@- rac1:/home/# docker images

REPOSITORY TAG IMAGE ID CREATED SIZE

docker.io/sath89/oracle-12c latest b8bf52883bc7  weeks ago 5.692 GB

使用刚刚下载下来的12g image创建一个container,并运行其上的oracle数据库

docker run -d -p : -p : -v /my/oracle/data:/u01/app/oracle sath89/oracle-12c
[root@-rac1 ~]# docker logs -f ffbeb07058449672c640ddb4e59b8376dae2e3b4dd54142871da7adbc069ee79

ls: cannot access /u01/app/oracle/oradata: No such file or directory

Database not initialized. Initializing database.

Starting tnslsnr

Copying database files

% complete

% complete

Creating and starting Oracle instance

% complete

% complete

% complete

Completing Database Creation

% complete

% complete

Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/xe/xe.log" for further details.

Configuring Apex console

Database initialized. Please visit http://#containeer:8080/em http://#containeer:8080/apex for extra configuration if needed

Starting web management console

PL/SQL procedure successfully completed.

Starting import from '/docker-entrypoint-initdb.d':

found file /docker-entrypoint-initdb.d//docker-entrypoint-initdb.d/*

[IMPORT] /entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*

Import finished

Database ready to use. Enjoy! ;)

到这里Oracle实例就已经启动好了

可以看到创建的container已经在运行中

[root@-rac1 ~]~$ docker ps

CONTAINER ID        IMAGE              COMMAND            CREATED            STATUS              PORTS                                            NAMES

9e893d773494        sath89/oracle-12c  "/entrypoint.sh "   minutes ago      Up  minutes      0.0.0.0:->/tcp, 0.0.0.0:->/tcp  clever_chandrasekhar

进入oracle container

[root@-rac1 ~]~$ docker exec -it 9e893d773494 /bin/bash

root@9e893d773494:/# su oracle

oracle@9e893d773494:~$ $ORACLE_HOME/bin/sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2. Production on Fri Feb  :: 

Copyright (c) , , Oracle.  All rights reserved.

SQL>

Oracle 使用的实例名,用户名,密码如下

---------------------------------------------

hostname: localhost

port: 

sid: xe

username: system

password: oracle

---------------------------------------------

接下来就可以快速使用Oracle12C了

更多Docker相关教程见以下内容

Docker安装应用(CentOS 6.5_x64) http://www.linuxidc.com/Linux/2014-07/104595.htm

Ubuntu 14.04安装Docker  http://www.linuxidc.com/linux/2014-08/105656.htm

Ubuntu使用VNC运行基于Docker的桌面系统  http://www.linuxidc.com/Linux/2015-08/121170.htm

64位 CentOS下安装与启动 Docker  http://www.linuxidc.com/Linux/2017-03/141714.htm

Ubuntu 15.04下安装Docker  http://www.linuxidc.com/Linux/2015-07/120444.htm

在Ubuntu Trusty 14.04 (LTS) (64-bit)安装Docker http://www.linuxidc.com/Linux/2014-10/108184.htm

在 Ubuntu 15.04 上如何安装Docker及基本用法 http://www.linuxidc.com/Linux/2015-09/122885.htm

Ubuntu 16.04上Docker使用手记 http://www.linuxidc.com/Linux/2016-12/138490.htm

Docker 的详细介绍请点这里
Docker 的下载地址请点这里

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-03/141760.htm

利用Docker快速部署Oracle环境的更多相关文章

  1. 利用Docker快速部署Mysql

    写在前面 我又来更新了~~~,今天内容较少,主要是利用Docker快速部署Mysql和初始化数据 利用Docker下载Mysql 简洁明了,在命令提示符中输入 docker pull mysql:8. ...

  2. 巧用 Docker 快速部署 GPU 环境

    公众号关注 「开源Linux」 回复「学习」,有我为您特别筛选的学习资料~ 在 Linux 服务器上使用 GPU 跑深度学习的模型很正常不过.如果我们想用 Docker 实现同样的需求,就需要做些额外 ...

  3. 使用Docker快速部署Storm环境

    Storm的部署虽然不是特别麻烦,但是在生产环境中,为了提高部署效率,方便管理维护,使用Docker来统一管理部署是一个不错的选择.下面是我开源的一个新的项目,一个配置好了storm与mono环境的D ...

  4. 如何利用 docker 快速部署 Mysql 服务

    docker 基础教程不再多说,这里只着重讲如何使用 docker 部署 mysql 服务 docker 拉取 访问 dockerhub,搜索关键词 mysql,我这里选择 mysql-server, ...

  5. 【Linux】Linux下使用Docker快速部署Oracle数据库

    安装最新Docker wget -qO- https://get.docker.com/ | sh` 安装 docker-compose sudo curl -L https://github.com ...

  6. 私活利器,docker快速部署node.js应用

    http://cnodejs.org/topic/53f494d9bbdaa79d519c9a4a 最近研究了几天docker的快速部署,感觉很有新意,非常轻量级和方便,打算在公司推广一下,解放运维, ...

  7. 使用Docker快速搭建ELK环境

    今天由于Win系统的笔记本没带回家,其次Docker在非Linux系统下都需要安装额外的软件去镜像才行 所以感觉没有差别,先直接用Mac搭建一遍呢, 本篇部分命令和配置内容为摘抄 Mac下使用Dock ...

  8. 利用Docker搭建本地https环境的完整步骤

    利用Docker搭建本地https环境的完整步骤 这篇文章主要给大家介绍了关于如何利用Docker搭建本地https环境的完整步骤,文中通过示例代码将实现的步骤介绍的非常详细,对大家的学习或者工作具有 ...

  9. 如何快速部署Oracle Database

    Oracle Database在Linux系统上的安装是每一个初学者都必须面临的问题,只有正确的配置好了环境,才能进行后续的深入学习.本文旨在说明如何快速的部署Oracle的单实例环境,对于初学者,还 ...

随机推荐

  1. python练习题3--for

    题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 程序分析: 假设该数为 x. 1.则:x + 100 = n2, x + 100 + 168 = m2 ...

  2. cocos2dx触摸

    两种方法其实都一样,CCLayer也是继承CCTouchDelegate. 1.继承CCTouchDelegate 添加触摸代理 CCTouchDispatcher* pDispatcher = CC ...

  3. Echarts中线状图的X轴坐标标签倾斜样式

    在echarts中应用线状图时可以展现很多的数据,而当数据量过多的时候,X轴的坐标就会显示不全,因为整个图形的宽度是一定的,X轴的全长是一定的 http://www.cnblogs.com/phpgc ...

  4. ffmpeg 和 x264的参数对照

    ffmpeg 和 x264的参数对照   x264 ffmpeg 说明 命令行 字段 命令行 字段 qp qp_constant cqp cqp 固定量化因子.取值范围0到51. 经常取值在20-40 ...

  5. oracle tuning 工具

    工欲善其事, 必先利其器. oracle 调优方面有很多工具, 目前 UI 个人只打算使用 Toad. 重要文件 一. alert log file. (位置 parameter BACKGROUND ...

  6. oracle的dual表

    1.DUAL表的用途Dual 是 Oracle中的一个实际存在的表,任何用户均可读取,常用在没有目标表的Select语句块中 --查看当前连接用户Connected to Oracle Databas ...

  7. Docker:通过Git部署

    这是我翻译的国外博客,如需转载请注明出处和原文链接 我一直听说Docker是个很棒的新事物,但是我一直提不起兴趣,直到我遇到一个切实的问题: 如果通过Docker来部署 Scout ,这么做会轻松一些 ...

  8. poj 3281(网络流+拆点)

    题目链接:http://poj.org/problem?id=3281 思路:设一个超级源点和一个超级汇点,源点与食物相连,饮料与汇点相连,然后就是对牛进行拆点,一边喜欢的食物相连,一边与喜欢的饮料相 ...

  9. 数据库设计——E-R图

    一,复习下基础 1.弱实体 这样的实体须要依赖还有一个实体.若还有一个实体不存在了.它也随之消失.相对而言,它依赖的那个实体成为强实体. 2,特殊化 在数据库设计的过程中,我们会发现.一个实体能够依照 ...

  10. manacher算法处理最长的回文子串(一)

    引言 相信大家都玩过折叠纸张,如果把回文串相当于折叠一个A4纸,比如ABCDDCBA就是沿着中轴线(D与D之间)对折重合,那么这个就是一个回文串.或者是ABCDEDCBA的中轴线就是E,那么沿着中轴线 ...