docker php 一键部署_实用教程--docker一键部署oracle19c

概述

之前都是用docker去实现一键部署mysql,oracle麻烦很多,dockerfile很不好写,有很多逻辑需要考虑,无意中看到一位大佬marcelo-ochoa的dockerfile,测试了下确实可行,这里分享下给大家。


环境配置

操作系统:ubuntu16.04 TLS

docker Version: 18.09.2

oracle Version: 19.2.0.0.0

1、下载dockerfile

cd /optgit clone https://github.com/frobes/dba_devops.git
eac879ef068262e60a483379f07a8b2e.png
[root@dba_devops dockerfiles]# lltotal 32drwxr-xr-x 2 root root 4096 Feb 22 08:12 11.2.0.2drwxr-xr-x 2 root root 4096 Feb 22 08:12 12.1.0.2drwxr-xr-x 2 root root 4096 Feb 22 08:12 12.2.0.1drwxr-xr-x 2 root root 4096 Feb 22 08:12 18.3.0drwxr-xr-x 2 root root 4096 Feb 22 08:12 18.4.0drwxr-xr-x 2 root root 4096 Feb 22 08:12 19.2.0-rwxr-xr-x 1 root root 5145 Feb 22 08:12 buildDockerImage.sh[root@dba_devops dockerfiles]# pwd/opt/docker-images/OracleDatabase/SingleInstance/dockerfiles

可以看到是存在19.2.0的dockerfile的,同时检查其安装的安装包文件名

[root@dba_devops 19.2.0]# lltotal 68-rwxr-xr-x 1 root root 1148 Feb 22 08:12 checkDBStatus.sh-rwxr-xr-x 1 root root 905 Feb 22 08:12 checkSpace.sh-rw-r--r-- 1 root root 49 Feb 22 08:12 Checksum.ee-rwxr-xr-x 1 root root 3012 Feb 22 08:12 createDB.sh-rw-r--r-- 1 root root 9204 Feb 22 08:12 dbca.rsp.tmpl-rw-r--r-- 1 root root 6878 Feb 22 08:12 db_inst.rsp-rw-r--r-- 1 root root 3405 Feb 22 08:12 Dockerfile-rwxr-xr-x 1 root root 2526 Feb 22 08:12 installDBBinaries.sh-rwxr-xr-x 1 root root 6526 Feb 22 08:12 runOracle.sh-rwxr-xr-x 1 root root 1015 Feb 22 08:12 runUserScripts.sh-rwxr-xr-x 1 root root 758 Feb 22 08:12 setPassword.sh-rwxr-xr-x 1 root root 932 Feb 22 08:12 setupLinuxEnv.sh-rwxr-xr-x 1 root root 678 Feb 22 08:12 startDB.sh[root@dba_devops 19.2.0]# cat Dockerfile |grep INSTALL_FILE_1 INSTALL_FILE_1="V981623-01.zip" COPY --chown=oracle:dba $INSTALL_FILE_1 $INSTALL_RSP $INSTALL_DB_BINARIES_FILE $INSTALL_DIR/

这里可以看到,安装包是叫V981623-01.zip


2、制作镜像

2.1、拷贝19c安装包后生成镜像

将安装包V981623-01.zip拷贝到该目录下,运行开始安装

cd /opt/docker-images/OracleDatabase/SingleInstance/dockerfiles

./buildDockerImage.sh -v 19.2.0 -e

52d06468dc02d186cb68264959a8cde2.png

2.2、生成镜像过程:

ed9aed1e91394eb99a285b53458a11b1.png
03a50d7d69a83b1e5600bc3a287adc2e.png

2.3、安装完成:

8b80e49e745d61892f04aebcc4724e48.png

2.4、查看镜像:

docker images

c34fcf4fff9daeb103b95f8c764c3777.png

到上面一步我们的镜像就做好了,下面基本都没什么太大问题。


3、初始化数据库实例

3.1、初始化实例

#docker run --name oracle19c -p 1521:1521 -p 5500:5500 -v /oradata/oracle19c:/opt/oracle/oradata oracle/database:19.2.0-ee
c6eaa66f65c421db744c760f329b81de.png
a583572d7b60102aeae65abf396a5368.png
98a113ea03866bc72b3cf1ab793548aa.png

注,如果“DATABASE IS READY TO USE!”字样已经出现,且后面的log一直停着不动,可以在别的窗口查看container。

3.2、查看容器

docker ps -a

f5d7458d6c7ff53862cbddb66646d0b6.png

3.3、检查数据文件

ll /oradata/oracle19c/ORCLCDB

3cf47f3a208928022ca4fee5cc08b731.png

4、登录主机或者数据库操作

docker ps -a

docker exec -it abe5 /bin/bash

sqlplus sys/1RmJBpJIsmU=1@ORCLCDB as sysdba

SQL> select instance_name,status from v$instance;

cb580faeab91cfdaeaa250ec1fc81bb6.png

到这里我们的数据库19c就部署好了。


d9be5ec69fbdca35e9b866acc0f9e4b8.gif

前面核心命令就两句:

./buildDockerImage.sh -v 19.2.0 -e

docker run --name oracle19c -p 1521:1521 -p 5500:5500 -v /oradata/oracle19c:/opt/oracle/oradata oracle/database:19.2.0-ee

一直以来都想试着写个dockerfile来一键部署oracle,虽然对于oracle意义可能不是很大,今天参考一下其他大佬的dockerfile后自己修改做了一下,过程还是挺简单的,大家有兴趣也可以研究下dockerfile里面内容。

3cb9de246a8416f1e14206bff0326da5.gif
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值