使用 docker 快速安装 oracle 11g
前言
我们在手动安装oracle数据库时,安装步骤纷繁复杂,耗时较长
在此介绍如何使用docker快速安装oracle 11g
一、docker 及其安装环境
操作系统:
[root@centos7 ~]# cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
docker 版本:
[root@centos7 ~]# docker -v
Docker version 1.13.1, build 7f2769b/1.13.1
docker 安装方式:
yum update && yum -y install docker
docker 使用详细信息可查看 https://www.cnblogs.com/murry/p/9332747.html
二、docker 镜像拉取以及启动
docker hub 镜像拉取以及查看
docker pull jaspeen/oracle-11g
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/jaspeen/oracle-11g latest 0c8711fe4f0f 4 years ago 281 MB
创建宿主机 oracle 安装目录以及数据目录
mkdir -p /server/oracle
mkdir -p /server/dpdump
下载 oracle 并存放于服务器中
oracle 下载网址:https://www.oracle.com/database/technologies/oracle-database-software-downloads.html

[root@centos7 oracle]# ls
linux.x64_11gR2_database_1of2 linux.x64_11gR2_database_2of2
解压缩并删除安装包
[root@centos7 oracle]# ls
database
启动 docker
docker run -d --privileged -p 1521:1521 -v /server/oracle:/install -v /server/dpdump:/opt/oracle/dpdump --name=oracle11g jaspeen/oracle-11g
启动命令解析:
-d :后台运行容器,并返回容器ID;
--privieged:开启特权模式;
-p:宿主机与 docker 的端口映射;
-v:绑定一个数据卷;
--name:起一个容器名;
启动后查看容器运行状况
[root@centos7 oracle]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c5e913b4e96b jaspeen/oracle-11g "/assets/entrypoin..." 3 days ago Up 3 seconds 0.0.0.0:1521->1521/tcp, 8080/tcp oracle11g
此时一个 oracle 11g docker 已经启动
三、自己的 docker 镜像制作
由于版权问题,拉取下来的 docker 镜像是不包含任何版本的 oracle 的
故在启动 docker 后,需要创建一个自己的镜像以备使用
提交 docker 镜像以及查看
[root@centos7 oracle]# docker commit oracle11g oracle11g-installed
[root@centos7 oracle]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
oracle11g-installed latest 4a55732efad1 3 days ago 2.83 GB
docker.io/jaspeen/oracle-11g latest 0c8711fe4f0f 4 years ago 281 MB
进入 docker 容器内查看
一共有两种方式,可以使用容器ID或者使用 docker run 时设置的 name
[root@centos7 oracle]# docker exec -it c5e913b4e96b bash
[root@c5e913b4e96b /]#
[root@centos7 oracle]# docker exec -it oracle11g bash
[root@c5e913b4e96b /]#
当然,可以设置一个别名,更方便进入容器内
[root@centos7 oracle]# vim ~/.bashrc
末行加入:
alias oracle='docker exec -it c5e913b4e96b bash' 使文件生效:
source ~/.bashrc
至此一个 oracle 11g 容器制作完成
更多详细使用方式以及信息、dockerfile 请查看 docker hub:
https://hub.docker.com/r/jaspeen/oracle-11g
使用 docker 快速安装 oracle 11g的更多相关文章
- Oracle安装部署之linux(redhat/centos)快速安装oracle 11g rac
安装oracle 11gR2 RAC 一.网络规划及安装虚拟主机 主机名 主机版本 Ip rac1.localdomain Redhat 6.5 RAC节点1 192.168.100.11 rac2. ...
- 利用Docker快速部署Oracle环境
工作中需要频繁使用Oracle环境,但是每次搭建起来比较消耗时间,本想通过虚拟机模板的方式来快速安装oracle vm,但是每次改ip等环境也很耗时,因此想到docker中有没有已经做好的images ...
- centos安装oracle 11g 完全图解
摘要: 说明: Linux服务器操作系统:CentOS 5.8 32位(注意:系统安装时请单独分区/data用来安装oracle数据库) Linux服务器IP地址:192.168.21.150 Ora ...
- 在Windows 10上安装Oracle 11g数据库出现的问题及解决
在Windows 10上安装Oracle 11g数据库,并且很多次出现过:当安装的进度条进行到快要结束的时候弹出一个提示框.如下: [Java(TM)2 Platform Standard Editi ...
- 安装Oracle 11g RAC R2 之Linux DNS 配置
Oracle 11g RAC 集群中引入了SCAN(Single Client Access Name)的概念,也就是指集群的单客户端访问名称.SCAN 这个特性为客户端提供了单一的主机名,用于访问集 ...
- Oracle Linux 6.3下安装Oracle 11g R2(11.2.0.3)
本文主要描写叙述了在Oracle Linux 6.3下安装Oracle 11gR2(11.2.0.3).从Oracle 11g開始,Oracle官方站点不再提供其Patch的下载链接,须要使用Meat ...
- 安装ORACLE 11g 64位 pl/sql无法进入的问题。
转载自网上的内容: 1)安装Oracle 11g 64位 2)安装32位的Oracle客户端( instantclient-basic-win32-11.2.0.1.0)下载地址:http://www ...
- windows 8 安装 oracle 11g 报错:command line option syntax error,type command/? for help
windows 8 安装 oracle 11g 报错:command line option syntax error,type command/? for help 在windows8操作系统上安装 ...
- CentOS Linux 系统 安装oracle 11g
CentOS Linux 系统 安装oracle 11g 在Linux系统上安装oracle是比较麻烦,需要配置各种变量啥的,o(︶︿︶)o ,但是没办法,有些东西你总的去接触,而且接触理解的越早越深 ...
随机推荐
- LEANGOO用户设置
转自:https://www.leangoo.com/leangoo_guide/leangoo_guide_kanban_user.html#toggle-id-7 1. 点击屏幕右上角头像或用户名 ...
- insmod: can't insert 'xxx.ko': unknown symbol in module, or unknown parameter
手动加载内核模块时候,报如下错误信息 insmod: can't insert 'xxx.ko': unknown symbol in module, or unknown parameter 问题原 ...
- kubernetes之健康状态检测
1.说明 容器探针: kubelet 对容器执行的定期诊断 探针执行方式: LivenessProbe: 判断容器是否存活 running状态, 如果不健康kubelet就会杀掉pod,根据重启策略R ...
- python基础:数据类型二
一.元组类型 二.字典类型 三.集合 一.元组类型 # 什么是元组: 元组就是一个不可变的列表 # ======================================基本使用======== ...
- 计算机基础与python入门
一.计算机.cpu与存储器 二.操作系统.编程语言及编写python.变量 三.数据类型.输入输出及基本运算 四.流程控制之if判断.while与for循环 一.计算机.cpu与存储器 1. 什么是编 ...
- httpd安装mod_jk模块
1.1 使用yum安装的httpd安装mod_jk模块 mod_jk模块下载地址官网 安装httpd和httpd-devel(这个包会有apxs必须要有的) [root@apache ~]# yum ...
- 用实例的方式去理解storm的并发度
什么是storm的并发度 一个topology(拓扑)在storm集群上最总是以executor和task的形式运行在suppervisor管理的worker节点上.而worker进程都是运行在jvm ...
- java -为什么重写equals(),还需要重写hashCode()?
1.先post这两个方法的基本定义: equals()的定义: 浅谈Java中的equals和==(转) hashCode()的定义: java中hashCode()方法的作用 Java中hashCo ...
- Windows环境下使用uiautomatorviewer进行元素定位
一.摘要 元素定位本篇主要介绍如何使用uiautomatorviewer,通过定位到页面上的元素,然后进行相应的点击等操作,uiautomatorviewer 是 android-sdk 自带的一个元 ...
- 鼠标点击自定义文字展现特效JS代码
JS特效使用方法 只需将如下JS代码放到</body>之前就好了 var a_idx = 0; jQuery(document).ready(function($) { $("b ...