文档章节

使用Docker安装Oracle 12c

K_Zhiqiang
 K_Zhiqiang
发布于 2017/06/19 19:28
字数 1017
阅读 2132
收藏 1

使用Docker安装Oracle 12c

假设你的服务器已成功安装Docker,继续进行以下操作:

1. 启动Docker

[root@node01 ~]# service docker start

2. 从远程仓库搜索oracle image

[root@node01 ~]# 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       457                  [OK]
docker.io   docker.io/oraclelinux                      Oracle Linux is an open-source operating s...   347       [OK]
docker.io   docker.io/alexeiled/docker-oracle-xe-11g   This is a working (hopefully) Oracle XE 11...   208                  [OK]
docker.io   docker.io/sath89/oracle-12c                Oracle Standard Edition 12c Release 1 with...   141                  [OK]
docker.io   docker.io/sath89/oracle-xe-11g             Oracle xe 11g with database files mount su...   99                   [OK]
docker.io   docker.io/isuper/java-oracle               This repository contains all java releases...   56                   [OK]
docker.io   docker.io/jaspeen/oracle-11g               Docker image for Oracle 11g database            39                   [OK]
docker.io   docker.io/oracle/oraclelinux               Oracle Linux is an open-source operating s...   37                   [OK]
docker.io   docker.io/ingensi/oracle-jdk               Official Oracle JDK installed on centos.        20                   [OK]
docker.io   docker.io/oracle/openjdk                   Docker images containing OpenJDK Oracle Linux   20                   [OK]
docker.io   docker.io/cogniteev/oracle-java            Oracle JDK 6, 7, 8, and 9 based on Ubuntu ...   19                   [OK]
docker.io   docker.io/airdock/oracle-jdk               Docker Image for Oracle Java SDK (8 and 7)...   18                   [OK]
docker.io   docker.io/oracle/glassfish                 GlassFish Java EE Application Server on Or...   15                   [OK]
docker.io   docker.io/n3ziniuka5/ubuntu-oracle-jdk     Ubuntu with Oracle JDK. Check tags for ver...   13                   [OK]
docker.io   docker.io/oracle/nosql                     Oracle NoSQL on a Docker Image with Oracle...   10                   [OK]
docker.io   docker.io/andreptb/oracle-java             Debian Jessie based image with Oracle JDK ...   8                    [OK]
docker.io   docker.io/infogene/oracle                  Image for running Oracle Database 11g Stan...   6                    [OK]
docker.io   docker.io/openweb/oracle-tomcat            A fork off of Official tomcat image with O...   5                    [OK]
docker.io   docker.io/flurdy/oracle-java7              Base image containing Oracle's Java 7 JDK       4                    [OK]
docker.io   docker.io/davidcaste/debian-oracle-java    Oracle Java 8 (and 7) over Debian Jessie        3                    [OK]
docker.io   docker.io/jtech/oracle-jdk                 A Docker image based on the smallest Linux...   3                    [OK]
docker.io   docker.io/sgrio/java-oracle                Docker images of Java 7/8 provided by Orac...   3                    [OK]
docker.io   docker.io/clincase/oracle                  clincase oracle db server image                 1                    [OK]
docker.io   docker.io/publicisworldwide/oracle-core    This is the core image based on Oracle Lin...   1                    [OK]
docker.io   docker.io/expertsystems/oracle-jdk8        CentOS based base image with Oracle JDK 8       0                    [OK]

远程仓库中有很多oracle image,本次我们选择Oracle-12c

3. 从远程仓库获取oracle-12c image

[root@node01 ~]# docker pull sath89/oracle-12c
Using default tag: latest
Trying to pull repository docker.io/sath89/oracle-12c ...
latest: Pulling from docker.io/sath89/oracle-12c

863735b9fd15: Pull complete
4fbaa2f403df: Pull complete
44be94a95984: Pull complete
a3ed95caeb02: Pull complete
b8bc6e8767ee: Pull complete
c918da326197: Pull complete
448e1619a038: Pull complete
faadd00cf98e: Pull complete
48a252b66251: Pull complete
0be1ba285f23: Pull complete
Digest: sha256:0d075905ca2243f0c60397e49eaae6edd62afcce43528df77768f346ece7c49b

4. 查看下载好的image

[root@node01 ~]# docker images
REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE
docker.io/sath89/oracle-12c   latest              7508a4d8d54f        13 days ago         5.703 GB

docker images : 列出本地镜像。

5. 使用刚刚下载下来的oracle 12c image创建一个container,并运行其中的oracle数据库。命令执行成功会返回一个container id

[root@node01 ~]# docker run -d -p 9090:8080 -p 1521:1521 -v /mnt/bd/data/oracle:/u01/app/oracle sath89/oracle-12c
c5a4400ae7d2586c3bec039685e1a8046c998cb2223bef7b3c71b01f2fa1204e

docker run :创建一个新的容器并运行一个命令。-d: 后台运行容器,并返回容器ID;-p:主机与容器的端口映射(主机ip:容器ip);-v:主机与容器的目录映射。

6. 查看container日志

[root@node01 ~]# docker logs -f c5a4400ae7d2586c3bec039685e1a8046c998cb2223bef7b3c71b01f2fa1204e
Database not initialized. Initializing database.
Starting tnslsnr
Copying database files
1% complete
3% complete
11% complete
18% complete
26% complete
37% complete
Creating and starting Oracle instance
40% complete
45% complete
50% complete
55% complete
56% complete
60% complete
62% complete
Completing Database Creation
66% complete
70% complete
73% complete
85% complete
96% complete
100% 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! ;)

7. 查看container状态

[root@node01 ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                                            NAMES
c5a4400ae7d2        sath89/oracle-12c   "/entrypoint.sh "   9 minutes ago       Up 9 minutes        0.0.0.0:1521->1521/tcp, 0.0.0.0:9090->8080/tcp   silly_thompson

8.进入刚刚创建的container中

[root@node01 ~]# docker exec -it c5a4400ae7d2 /bin/bash
root@c5a4400ae7d2:/# su oracle
oracle@c5a4400ae7d2:/$ $ORACLE_HOME/bin/sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Mon Jun 19 10:26:59 2017

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


Connected to:
Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production

SQL> conn system/oracle as sysdba;
Connected.

docker exec :在运行的容器中执行命令。-i :即使没有附加也保持STDIN 打开;-t :分配一个伪终端。

9.Connect database with following setting:

hostname: localhost
port: 1521
sid: xe
service name: xe.oracle.docker
username: system
password: oracle

10.更多安装选项和说明请参考 Docker Hub中该镜像描述

© 著作权归作者所有

K_Zhiqiang
粉丝 0
博文 26
码字总数 14955
作品 0
海淀
程序员
私信 提问
利用Docker快速部署Oracle环境

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

taojin1240
2017/03/13
0
0
Docker搭建Oracle数据库

欢迎关注大数据和人工智能技术文章发布的微信公众号:清研学堂,在这里你可以学到夜白(作者笔名)精心整理的笔记,让我们每天进步一点点,让优秀成为一种习惯! 使用 sudo docker search O...

李金泽
2018/03/15
0
0
基于 Docker 快速搭建 Oracle 开发环境

要给开发人员搭建 Oracle 测试环境,准备基于 Docker 构建,同时建立一个 Docker 私有仓库,谁需要就让他装一个 Docker,才从这私有仓库 pull 镜像即可。 环境如下: CentOS 7 docker-ce-18....

DiligentMe
2018/05/18
0
0
docker 搭建oracle环境

1.创建容器 docker run -d -p 9090:8080 -p 1521:1521 -v /home/data/oracle:/u01/app/oracle sath89/oracle-12c 2.登录容器 docker exec -it c5a4400ae7d2 /bin/bash su oracle $ORACLE_HOM......

qiang123
2018/04/29
38
0
Docker 安装 MySQL5.7

首先,系统(3.8以上内核的linux)中安装好 Docker 这个运用程序。由于网络原因,我们下载一个Docker官方的镜像需要很长的时间,甚至下载失败。为此,阿里云容器镜像服务提供了官方的镜像站点...

Mr_ET
2018/04/26
4.3K
0

没有更多内容

加载失败,请刷新页面

加载更多

颠覆微服务认知:深入思考微服务的七个主流观点

一、逃离单体系统,拥抱微服务? 单体系统和微服务的区别在于,一个单体系统是一个大而全的功能集合,每个服务器运行的是这个应用的完整服务。而微服务是独立自治的功能模块,它是生态系统中...

别打我会飞
25分钟前
3
0
解决GitHub下载慢问题,不用修改HOSTS文件

本文链接:https://blog.csdn.net/github_37847975/article/details/86477343 写这篇文章缘由是我用的一款Github上的软件软件版本更新,想去Github上下载新的版本,结果下载速度居然只有几k...

shzwork
30分钟前
4
0
如何查看ubuntu的版本

cat /etc/issue

南桥北木
53分钟前
3
0
Checkstyle的style

checkstyle是什么? 是代码规范检查,关于各种格式的利弊这里就不说了,但是业内有一些总结的规范利于goole或者阿里有自己的代码规范,就需要用到checkstyle。我个人很讨厌这东西,奈何项目再...

stayStand
今天
8
0
左边竖条的实现方法

下面这个图形,只使用一个标签,可以有多少种实现方式: 假设我们的单标签是一个 div : 1 < div > div> 定义如下通用CSS: 1 2 3 4 5 6 div{ position : relative ; width : 200px ; height ...

前端老手
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部