oracle作为oltp的大佬,非常多行业应用都会用到它。那么在开发的过程中就不可避免的要使用oracle数据库,oracle数据库的版本号有好多,当中express版本号是免费的开发版。它的主要限制是数据库的大小最大1G。和一些性能的限制,所以拿来做开发还是比較合适的。

以下介绍下如何使用装了oracle的 docker容器来进行开发:

首先。介绍一下docker-oracle这个image。他是在ubuntu的基础上安装oracle xe版本号来完毕的。

它的docker file例如以下:

FROM wnameless/xe-temp

MAINTAINER Alexei Ledenev <alexei.led@gmail.com>

ADD chkconfig /sbin/chkconfig
ADD init.ora /
ADD initXETemp.ora / RUN apt-get install -y libaio1 net-tools bc
RUN ln -s /usr/bin/awk /bin/awk
RUN mkdir /var/lock/subsys
RUN chmod 755 /sbin/chkconfig
RUN ln -s /proc/mounts /etc/mtab RUN dpkg --install /tmp/oracle-xe_11.2.0-1.0_amd64.deb RUN mv /init.ora /u01/app/oracle/product/11.2.0/xe/config/scripts
RUN mv /initXETemp.ora /u01/app/oracle/product/11.2.0/xe/config/scripts RUN printf 8080\\n1521\\noracle\\noracle\\ny\\n | /etc/init.d/oracle-xe configure RUN echo 'export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe' >> /etc/bash.bashrc
RUN echo 'export PATH=$ORACLE_HOME/bin:$PATH' >> /etc/bash.bashrc
RUN echo 'export ORACLE_SID=XE' >> /etc/bash.bashrc EXPOSE 22
EXPOSE 1521
EXPOSE 8080 CMD sed -i -E "s/HOST = [^)]+/HOST = $HOSTNAME/g" /u01/app/oracle/product/11.2.0/xe/network/admin/listener.ora; \
service oracle-xe start; \
/usr/sbin/sshd -D

放上这dockerfile的主要目的是为了看清它是如何创建的。

然后。pull一个已经装好oracle xe的image。

docker pull alexeiled/docker-oracle-xe-11g

也能够到我的小站 http://www.dockerpool.com上下载

命令例如以下:

docker  pull dl.dockerpool.com:5000/alexeiled/docker-oracle-xe-11g

用新下载的image启动一个oracle容器,打开22 1521 8080 端口

docker run -d -p 22:22 -p 1521:1521 -p 8080:8080 alexeiled/docker-oracle-xe-11g

以下是一些容器的基本信息:

oracle:    
  sid xe
  system oracle
操作系统:    
  root admin
     

这样我们就能用这个容器来进行开发了,比方一个项目须要3个oracle server:

docker run -d -p 101:22 -p 1521:1521 -p 8080:8080  --name oracle1 alexeiled/docker-oracle-xe-11g

docker run -d -p 102:22 -p 1522:1521 -p 8081:8080  --name oracle2 alexeiled/docker-oracle-xe-11g

docker run -d -p 103:22 -p 1523:1521 -p 8082:8080  --name oracle3 alexeiled/docker-oracle-xe-11g

启动脚本也能够简单的写成 docker start oracle1 oracle2 oracle3

这对于高速搭建带oracle的开发环境还是有些益处的。

docker 实战---使用oracle xe作为开发数据库(六)的更多相关文章

  1. Oracle XE自带数据库创建的过程

    Oracle XE自带数据库如何创建的?XE.sql脚本定义实例究竟是怎样的?阅读下文,您可以找到这些问题的答案. Oracle XE自带数据库是如何创建的呢?这是很多人都提到过的问题,下面就为您详细 ...

  2. Oracle XE手动建立数据库实例

    参考资料为: [Oracle XE系列之三]使用OMF方式手工创建Oracle XE数据库 - 王立夫 - 博客园http://www.cnblogs.com/opfo/p/5056122.html ...

  3. PLSQL Developer12连接远程Oracle xe 11g

    目标: .学习使用docker下载oracle xe 11g .使用PLSQL连上启动运行oracle xe 11g容器服务 1.准备工作 Linux 安装docker 下载PLSQL Develop ...

  4. 免费数据库(SQLite、Berkeley DB、PostgreSQL、MySQL、Firebird、mSQL、MSDE、DB2 Express-C、Oracle XE)

    SQLite数据库是中小站点CMS的最佳选择 SQLite 是一个类似Access的轻量级数据库系统,但是更小.更快.容量更大,并发更高.为什么说 SQLite 最适合做 CMS (内容管理系统)呢? ...

  5. Docker实战(九)之数据库应用

    目前,主流数据库包括关系型和非关系型两种. 关系型数据库是建立在关系模型基础上的数据库,借助于集合代数等数学概念金额方法来处理数据库中的数据,支持复杂的事务处理和结构化查询.代表实现有MySQL .O ...

  6. 【Oracle XE系列之一】Windows10_X64环境 安装Oracle XE11gR2 X64数据库

    一.安装 1.去Oracle官网下载XE版的安装包[下载路径](Oracle Database Express Edition 11g Release 2 for Windows x64),解压. 2 ...

  7. Java开发不懂Docker,学尽Java也枉然,阿里P8架构师手把手带你玩转Docker实战

    转: Java开发不懂Docker,学尽Java也枉然,阿里P8架构师手把手带你玩转Docker实战 Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一 ...

  8. 利用Docker快速部署Oracle环境

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

  9. 云开发数据库VS传统数据库丨云开发101

    云开发数据库与传统数据库的不同 在小程序·云开发中,最核心的便是三大组件:数据库.云存储和云函数,从今天开始,我们将开始隔日更的专栏文章,云开发101,在第一周,我们将从最最核心的数据库开始说起. 云 ...

随机推荐

  1. Linux下redis的安装及用法

    1.下载源代码包redis-2.8.21.tar.gz,并将其上传到指定文件夹/urs/src,然后对其进行解压: [root@Slave1pc src]# tar -xvf redis-2.8.21 ...

  2. el表达式判断是否相等

    <c:if test="${order.baofang eq 0 }"> 无包间 </c:if> <c:if test="${order.b ...

  3. T4模板_根据DB生成实体类

    为了减少重复劳动,可以通过T4读取数据库表结构,生成实体类,用下面的实例测试了一下 1.首先创建一个项目,并添加文本模板: 2.添加 文本模板: 3.向T4文本模板文件添加代码: <#@ tem ...

  4. UIAlertView与UIActionSheet

    1.UIAlertView(警告框) 1.1 创建警告框,设置样式 - (IBAction)alertView:(UIButton *)sender {//创建button按钮 //创建警告框的实例 ...

  5. 13年山东省赛 Boring Counting(离线树状数组or主席树+二分or划分树+二分)

    转载请注明出处: http://www.cnblogs.com/fraud/          ——by fraud 2224: Boring Counting Time Limit: 3 Sec   ...

  6. No1_3.数组初始化_Java学习笔记

    public class HelloArray { public static void main(String[] args) { // TODO Auto-generated method stu ...

  7. PHP PSR-4 Autoloader 自动加载(中文版)

    Autoloader 关键词 “必须”("MUST").“一定不可/一定不能”("MUST NOT").“需要”("REQUIRED"). ...

  8. Python使用xslt提取网页数据

    1,引言 在Python网络爬虫内容提取器一文我们详细讲解了核心部件:可插拔的内容提取器类gsExtractor.本文记录了确定gsExtractor的技术路线过程中所做的编程实验.这是第一部分,实验 ...

  9. deepin 2014 静态IP无法保存,临时方法

    打开终端: #临时添加静态IP ifconfig eth0 [ip] netmask [掩码] #添加默认网关 route add default gw [网关] #添加DNS vim /etc/re ...

  10. project euler 25 fibonacci

    数学方法: Saying that a number contains 1000 digits is the same as saying that it's greater than 10**999 ...