【Docker】如何在内网快速搭建docker并安装Oracle11g

这篇具有很好参考价值的文章主要介绍了【Docker】如何在内网快速搭建docker并安装Oracle11g。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

docker是一个用Go语言实现的开源项目,可以让我们方便的创建和使用容器,docker将程序以及程序所有的依赖都打包到docker container,这样你的程序可以在任何环境都会有一致的表现,这里程序运行的依赖也就是容器就好比集装箱,容器所处的操作系统环境就好比货船或港口,程序的表现只和集装箱有关系(容器),和集装箱放在哪个货船或者哪个港口(操作系统)没有关系。
docker 安装oracle 11,docker,docker,容器,运维

一、下载docker静态二进制存档

要根据硬件平台下载以免造成不兼容
https://download.docker.com/
根据自己的需求安装对应的版本(我这里选择的是docker-20.10.7)
https://download.docker.com/linux/static/stable/x86_64/docker-20.10.7.tgz

将下载好的的包上传到对应服务器
并解压 tar -zxvf docker-20.10.7.tgz
解压完的文件为docker

[root@v-ct-jy-czzp-app-160 opt]# tar -zxvf docker-20.10.7.tgz 

docker 安装oracle 11,docker,docker,容器,运维

二、将解压完的二进制文件移到可执行文件目录下

docker 安装oracle 11,docker,docker,容器,运维

[root@v-ct-jy-czzp-app-160 opt]# mv docker/* /usr/bin/

docker 安装oracle 11,docker,docker,容器,运维

三、配置docker.service

[root@v-ct-jy-czzp-app-160 opt]# vim /usr/lib/systemd/system/docker.service

将以下内容填入

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
 
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
 
[Install]
WantedBy=multi-user.target

四、启动dockerd服务

[root@v-ct-jy-czzp-app-160 opt]# systemctl daemon-reload
[root@v-ct-jy-czzp-app-160 opt]# systemctl start docker.service
[root@v-ct-jy-czzp-app-160 opt]# docker info
 

docker 安装oracle 11,docker,docker,容器,运维
将docker设置为开机自启动

[root@v-ct-jy-czzp-app-160 opt]# systemctl enable docker

docker 安装oracle 11,docker,docker,容器,运维

五、在有网络的环境生成Oracle11g镜像并导入

5.1下载镜像Oracle11g镜像

注意最好使用的服务器要和内网机器系统兼容否则镜像导入时会报错

[root@summer summer]# docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
Using default tag: latest
latest: Pulling from helowin/oracle_11g
ed5542b8e0e1: Pull complete 
a3ed95caeb02: Pull complete 
1e8f80d0799e: Pull complete 
Digest: sha256:4c12b98372dfcbaafcd9564a37c8d91456090a5c6fb07a4ec18270c9d9ef9726
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:latest
registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:latest

5.2将镜像打包

[root@summer summer]#docker save registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:latest > oracle11g.tar

5.3将镜像导入

[root@v-ct-jy-czzp-app-160 opt]# docker load -i oracle11g.tar 

docker 安装oracle 11,docker,docker,容器,运维

六、docker安装oracle11g

6.1启动镜像

[root@v-ct-jy-czzp-oth-02 ~]# docker run -d --name oracle -p 1521:1521 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

docker 安装oracle 11,docker,docker,容器,运维

6.2宿主机创建文件夹

[root@v-ct-jy-czzp-oth-02 ~]# mkdir -p /opt/oracle/
[root@v-ct-jy-czzp-oth-02 ~]# mkdir -p /opt/oracle/flash_recovery_area/

docker 安装oracle 11,docker,docker,容器,运维

6.3拷贝数据库文件至宿主机

[root@v-ct-jy-czzp-oth-02 ~]# mkdir -p /opt/oracle/
[root@v-ct-jy-czzp-oth-02 ~]# mkdir -p /opt/oracle/flash_recovery_area/
[root@v-ct-jy-czzp-oth-02 ~]# docker ps -a
CONTAINER ID   IMAGE                                                  COMMAND                  CREATED          STATUS          PORTS                                       NAMES
149b2d1a4d64   registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g   "/bin/sh -c '/home/o…"   26 seconds ago   Up 20 seconds   0.0.0.0:1521->1521/tcp, :::1521->1521/tcp   oracle
[root@v-ct-jy-czzp-oth-02 ~]# docker cp 149b2d1a4d64:/home/oracle/app/oracle/oradata /opt/oracle/oradata
[root@v-ct-jy-czzp-oth-02 ~]# docker cp 149b2d1a4d64:/home/oracle/app/oracle/flash_recovery_area/helowin /opt/oracle/flash_recovery_area/helowin
[root@v-ct-jy-czzp-oth-02 ~]# chmod -R 777 /opt/oracle/

6.4停止和删除容器

[root@v-ct-jy-czzp-oth-02 ~]# docker stop 149b2d1a4d64
149b2d1a4d64
[root@v-ct-jy-czzp-oth-02 ~]# docker rm 149b2d1a4d64
149b2d1a4d64

docker 安装oracle 11,docker,docker,容器,运维
docker 安装oracle 11,docker,docker,容器,运维

6.5启动docker容器(映射数据文件)

[root@v-ct-jy-czzp-oth-02 ~]# docker run -d --name oracle_llg -p 1521:1521 --privileged=true -v /opt/oracle/oradata:/home/oracle/app/oracle/oradata -v /opt/oracle/flash_recovery_area/helowin:/home/oracle/app/oracle/flash_recovery_area/helowin registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

docker 安装oracle 11,docker,docker,容器,运维

6.6执行并完成基础设置

6.6.1 进入容器
[root@v-ct-jy-czzp-oth-02 ~]# docker ps
CONTAINER ID   IMAGE                                                  COMMAND                  CREATED          STATUS          PORTS                                       NAMES
640d85e4800c   registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g   "/bin/sh -c '/home/o…"   10 seconds ago   Up 10 seconds   0.0.0.0:1521->1521/tcp, :::1521->1521/tcp   oracle_llg
[root@v-ct-jy-czzp-oth-02 ~]# docker exec -it 640d85e4800c /bin/bash

docker 安装oracle 11,docker,docker,容器,运维

6.6.2加载环境变量
[oracle@640d85e4800c /]$ source /home/oracle/.bash_profile
[oracle@640d85e4800c /]$ su root 
Password: 
#密码:helowin
[root@640d85e4800c /]# vi /etc/profile
#在末尾添加
    export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
    export ORACLE_SID=helowin
    export PATH=$ORACLE_HOME/bin:$PATH
#刷新配置
[root@640d85e4800c /]# source /etc/profile
[root@640d85e4800c /]# su oracle

docker 安装oracle 11,docker,docker,容器,运维

6.6.3登录
[oracle@47badc5bb7c4 /]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Fri Mar 3 19:42:31 2023

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

SQL> connect /as sysdba
Connected.
6.6.4修改默认用户密码
SQL> alter user system identified by system;

User altered.

SQL> alter user sys identified by sys;

User altered.

SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

Profile altered.

SQL>
6.6.5创建用户并指定表空间,授权
SQL> create user summer IDENTIFIED BY 123456 default tablespace test;

User created.

SQL> grant connect,resource,dba to summer;

Grant succeeded.

SQL>
名称 参数
IP 宿主机ip
端口 1521
SID helowin
账号 summer
密码 123456

docker 安装oracle 11,docker,docker,容器,运维

6.7 修改SID

原来SID为helowin,先需要修改为orcl

6.7.1关闭数据库
[oracle@47badc5bb7c4 /]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Wed Nov 4 01:00:41 2020

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

SQL> connect /as sysdba
Connected.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>
6.7.2修改环境变量
[oracle@47badc5bb7c4 /]$ vi /home/oracle/.bash_profile
#更改
ORACLE_SID=orcl;export ORACLE_SID
[oracle@47badc5bb7c4 /]$ cat /etc/oratab
orcl:/home/oracle/app/oracle/product/11.2.0/dbhome_2:Y
[oracle@47badc5bb7c4 /]$ cd $ORACLE_HOME/dbs
[oracle@47badc5bb7c4 dbs]$ ll
total 32
-rw-r-----. 1 oracle oinstall 3584 Jan  4  2016 123.sp
-rw-rw----. 1 oracle oinstall 1544 Nov  4 01:01 hc_helowin.dat
-rw-r--r--. 1 oracle oinstall 2851 May 16  2009 init.ora
-rw-r--r--. 1 oracle oinstall 1067 Jan  4  2016 inithelowin.ora
-rw-r-----. 1 oracle oinstall   24 Aug 23  2014 lkHELOWIN
-rw-r-----. 1 oracle oinstall   24 Dec 29  2015 lkORCL
-rw-r-----. 1 oracle oinstall 2048 Nov  4 00:33 orapwhelowin
-rw-r-----. 1 oracle oinstall 3584 Nov  4 00:25 spfilehelowin.ora
[oracle@39721ba8b1dd dbs]$ mv hc_helowin.dat hc_orcl.dat 
[oracle@39721ba8b1dd dbs]$ mv orapwhelowin orapworcl    
[oracle@39721ba8b1dd dbs]$ mv spfilehelowin.ora spfileorcl.ora 
[oracle@39721ba8b1dd dbs]$ mv lkHELOWIN lkORCL
[oracle@39721ba8b1dd dbs]$ exit
exit
[root@47badc5bb7c4 /]# exit
exit
[oracle@47badc5bb7c4 /]$ exit
exit
[root@summer oracle]# docker ps
CONTAINER ID        IMAGE                                                  COMMAND                  CREATED             STATUS              PORTS                    NAMES
47badc5bb7c4        registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g   "/bin/sh -c '/home/o…"   49 minutes ago      Up 49 minutes       0.0.0.0:1521->1521/tcp   oracle_llg
[root@summer oracle]# docker restart 39721ba8b1dd
47badc5bb7c4

docker 安装oracle 11,docker,docker,容器,运维

总结

就此如何快速在内网环境搭建一个Oracle数据库搭建完成,感谢支持文章来源地址https://www.toymoban.com/news/detail-783893.html

到了这里,关于【Docker】如何在内网快速搭建docker并安装Oracle11g的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • docker下安装oracle11g(一次安装成功)

    本文参考:https://blog.csdn.net/Alex_81D/article/details/123995878 本文主要记录在docker下安装oracle11g的整体流程; 拉取 oracle 11g 镜像(有6g,要等较长的时间): 执行以下命令以创建并运行 Oracle 11g 容器(其中: 30026 为映射主机端口, 8081 为管理界面端口, helowin 为Oracle数据库唯一实例

    2024年02月08日
    浏览(45)
  • 安装docker并在内安装mysql

    1. 停止Docker服务:        在卸载Docker之前,首先需要停止Docker服务。在终端中运行以下命令停止Docker服务: 2. 卸载Docker软件包: 接下来,你需要卸载Docker软件包。运行以下命令以卸载Docker及其依赖的软件包: sudo apt-get purge docker-ce docker-ce-cli containerd.io     或者( 我用的这

    2024年02月07日
    浏览(33)
  • Mr. Cappuccino的第68杯咖啡——基于Docker安装Oracle11g

    拉取镜像 以持久化的方式启动容器 关于持久化,source=oracle_vol指的是容器中的数据卷路径,target指的是容器外需要被挂载的目录路径。 查看volume的具体位置 修改配置文件 使用I键进入编辑模式,添加以下配置信息,再使用Esc键退出编辑模式,输入:wq保存配置信息。 检查配置

    2024年01月17日
    浏览(58)
  • debian11 快速安装docker,docker-compose

    如果update遇到如图错误 #如境外vps 无需换源则可以使用一下语句 #这是一个使用sed命令修改apt源列表的命令。其中,-i选项表示直接修改文件内容,而不是输出到终端,-s选项表示以行为单位进行处理。在这里,\\\"s|bullseye/updates|bullseye-security|\\\"是sed的替换表达式,它将源列表中所有包含

    2024年02月07日
    浏览(44)
  • Mac如何安装Oracle?Mac如何配置Docker?手把手教你配置Docker并配置Oracle

    !!!安装前准备:请提前安装好jdk 1.先去官网下载Doker,下载好以后安装并打开Docker,安装成功后,mac最上面导航栏会出现Docker图标,可以在终端中输入docker --version来查看Docker版本 Docker官网地址:https://www.docker.com 部分Mac打不开Docker???怎么解决,如下图所示在通过导航

    2024年02月03日
    浏览(61)
  • Debain11修改源及如何安装docker

    刚刚安装好的Debain需要修改一下源 编辑 /etc/apt/sources.list 文件 将文本内的源都注视掉,然后复制粘贴下面的源,亲测有效 按下 ctrl+x ,输入 Y 再按下 回车 即可保存 更新源,输入命令: apt update 安装必要的软件包: 添加Docker GPG密钥 添加Docker GPG密钥,以便您的系统信任Dock

    2024年02月04日
    浏览(29)
  • 如何利用Docker快速搭建一个支持java程序运行的环境(Ubuntu环境下)

    简单来说,docker是一种类似于虚拟机的虚拟技术。 但它们的不同之处在于,虚拟机占用了完全独立的内存,cpu,硬盘等资源,而docker只提供了完全独立的进程,而与其它进程公用计算机处理资源,在某种意义上来说,docker以更简单方便的方法实现了类似于虚拟机的体验效果,

    2024年02月01日
    浏览(52)
  • debezium docker订阅oracle 11g

    debezium 依赖于kafka,kafka依赖于zookeeper。 zookeeper实现了kafka消息的一致性,debezium 把订阅的数据推送到kafka dockerFile INSTANT_CLIENT_DIR 为oracleCilent,去官网下载即可,oracle11g的client是jdk8使用的,而debezium是jdk11, 这里我使用的是oracle12的client,测试可以使用 docker-compose 可根据githu

    2024年02月05日
    浏览(50)
  • Win11 Docker运行Oracle11g之数据导入(二)

    目录 一、dmp数据导入 二、数据库字符编码修改 三、注意事项 四、参考资料         上文说道imp工具导入: 又报错:vlue too large for column \\\"SCOTT\\\".\\\"xxx_HEAD\\\".\\\"xxx_NAME\\\"(actual:21,maximum:14)         报错提示:Oracle ORA-12899         解决方法:修改该字段所占字符空间后再重新导

    2024年02月04日
    浏览(43)
  • 【Docker】docker启动oracle11g并初始化数据,部署和使用

    前提:已经在docker中安装好Oracle 1.启动docker : 出现问题,请查看:Exited 139解决Window下docker启动oracle11g失败 2.进入容器 : [containerId]为你的容器名或者id 3.切换用户 以及 创建表空间存储位置 : 4.进入DBA,创建表空间,创建用户,授权 : 5.其他拓展 : 导出 导入

    2024年02月14日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包