Dockerfile制作Oracle19c镜像
Dockerfile文件
cat > Dockerfile << 'EOF'
# 使用 Oracle Linux 8 作为基础镜像
FROM oraclelinux:8# 复制 Oracle 19c 安装包
COPY oracle-database-ee-19c-1.0-1.x86_64.rpm /tmp/# 安装 Oracle 19c 数据库和依赖
RUN yum localinstall -y /tmp/oracle-database-ee-19c-1.0-1.x86_64.rpm && \yum -y clean all && \rm -f /tmp/oracle-database-ee-19c-1.0-1.x86_64.rpm# 初始化数据库脚本
COPY Instance_initialization.sh /opt/oracle/scripts/Instance_initialization.sh
RUN chmod +x /opt/oracle/scripts/Instance_initialization.sh# 切换Oracle
USER oracle# 设置环境变量
ENV ORACLE_BASE=/opt/oracle \ORACLE_HOME=/opt/oracle/product/19c/dbhome_1 \ORACLE_VERSION=19.3.0 \PATH=/opt/oracle/product/19c/dbhome_1/bin:$PATH# 创建目录用于挂载持久化表空间和 dump 文件
RUN mkdir -p $ORACLE_BASE/oradata && \mkdir -p $ORACLE_BASE/admin/dump# 暴露端口
EXPOSE 1521 5500# 配置数据库启动时的命令
CMD ["/usr/bin/sh /opt/oracle/scripts/Instance_initialization.sh"]
EOF
初始化脚本
vim Instance_initialization.sh
#!/bin/bash
# 设置数据库环境变量
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATHexport ORACLE_SID=${ORACLE_SID:-orcl}
export ORACLE_PWD=${ORACLE_PWD:-oracle}
export DB_USER=${DB_USER:-oracleuser}
export DB_PWD=${DB_PWD:-oraclepwd}# 创建监听
netca -silent -responsefile $ORACLE_HOME/assistants/netca/netca.rsp# 创建实例配置文件--dbca.rsp
cat > $ORACLE_BASE/scripts/dbca.rsp << EOF
responseFileVersion=$ORACLE_HOME/assistants/rspfmt_dbca_response_schema_v19.0.0
gdbName=$ORACLE_SID
sid=$ORACLE_SIDdatabaseConfigType=SItemplateName=General_Purpose.dbc
sysPassword=$ORACLE_PWD
systemPassword=$ORACLE_PWDdatafileDestination=$ORACLE_HOME/oradata
recoveryAreaDestination=$ORACLE_HOME/flash_recovery_areacharacterSet=ZHS16GBK
nationalCharacterSet=AL16UTF16
totalMemory=4096listeners=LISTENER
sampleSchema=true
databaseType=OLTP
emConfiguration=NONE
EOF# 创建实例
dbca -silent -createDatabase -templateName General_Purpose.dbc -responseFile $ORACLE_BASE/scripts/dbca.rsp# 查看监听
lsnrctl status# 创建普通用户并授权远程登录
sqlplus / as sysdba <<EOF
CREATE USER $DB_USER IDENTIFIED BY $DB_PWD;
GRANT CREATE SESSION TO $DB_USER;
EXIT;
EOF# 保持容器运行
tail -f /dev/null
totalMemory: 修改为实际内存值
制作镜像
docker build -t oracle-19c .
docker-compose文件
version: '3'
services:oracle-db:image: oracle-19c:latestcontainer_name: oracle19cuser: oracleenvironment:- ORACLE_SID=orcl- ORACLE_PWD=oracle#2012- DB_USER=orcl- DB_PWD=orcl#2012ports:- "1521:1521"- "5500:5500"volumes:- ./oradata:/opt/oracle/oradata # 数据持久化- ./dump:/opt/oracle/admin/dump # DUMP 文件持久化networks:- oracle-networkrestart: unless-stoppednetworks:oracle-network:driver: bridge
相关文章:
Dockerfile制作Oracle19c镜像
Dockerfile文件 cat > Dockerfile << EOF # 使用 Oracle Linux 8 作为基础镜像 FROM oraclelinux:8# 复制 Oracle 19c 安装包 COPY oracle-database-ee-19c-1.0-1.x86_64.rpm /tmp/# 安装 Oracle 19c 数据库和依赖 RUN yum localinstall -y /tmp/oracle-database-ee-…...
【时间之外】IT人求职和创业应知【23】
目录 新闻一:央行发布首个买断式逆回购交易公告 新闻二:2024CCF科技创业大赛报名截止 新闻三:BNB Chain将在迪拜主办第四届BNB孵化联盟(BIA) 认知决定你的赚钱能力。以下是今天可能影响你求职和创业的热点新闻: 今日关键字:TCL两连扳,已经跑了,我的认知就到此了 新…...
后端:Spring-1
文章目录 1. 了解 spring(Spring Framework)2. 基于maven搭建Spring框架2.1 纯xml配置方式来实现Spring2.2 注解方式来实现Spring3. Java Config类来实现Spring 2.4 总结 1. 了解 spring(Spring Framework) 传统方式构建spring(指的是Spring Framework)项目,导入依…...
OTX系统架构分析
OTX(Open Test Sequence Exchange)系统架构是一种专门为汽车行业设计的测试序列交换格式,它基于ISO 13209标准,旨在提供一种独立于测试人员的可执行测试序列描述格式。 一、OTX系统架构概述 OTX架构是一种标准化的平台和格式&am…...
ASO如何低预算进行优化
当一个产品打造出来之后,正式上线是从零到一的过程,那从一到一百的路径就是获取流量到商业变现这个环节产生的,之前的文章也说过,一个产品只有有了一定的曝光才能获得相应的搜索流量或下载流量 ASO的江湖地位:有数据显…...
非线性数据结构之数
一、基本概念 1. 二叉树的节点与深度 节点:二叉树的基本组成单位,每个节点包含一个数据值、一个左子节点和一个右子节点。树的深度(Height):指树的根节点到叶子节点的最长路径所包含的边数。 2. 二叉树的类型 叶节…...
个人开发三步走
一、开发准备 1.需求分析:需求是开发的起点。第一步要做的就是明确需求,具体来说就是分析目标用户、他们的需求(功能需求、性能需求、安全需求)和痛点。 2.技术选型:综合开发需求、个人能力(能熟练使用&a…...
qt QAction详解
1、概述 QAction是Qt框架中的一个抽象类,用于表示用户界面中的一个动作(action)。这些动作可以绑定到菜单项、工具栏按钮或快捷键上,提供了一种灵活的方式来处理用户交互。QAction不仅包含了动作的名称、图标、提示信息等属性&am…...
建立maven项目常见问题解决办法
从git拉的项目爆红 https://blog.csdn.net/wsdbld_/article/details/115380325 idea点击具体的类没有反应 https://www.likecs.com/show-204943934.html maven Could not find artifact com.** 无法下载原因分析 https://www.cnblogs.com/thinkingandworkinghard/p/100824…...
Windows 10 安装使用Docker踩过的坑和解决-31/10/2024
目录 环境版本 一、Docker Desktop双击启动没反应,open //./pipe/dockerDesktopLinuxEngine: The system cannot find the file specified. 二、Docker Desktop运行run命令时显示错误HTTP code 500 并且错误大意是服务器拒绝访问 三、Docker Engine stopped/启动…...
微服务之间的调用关系
从数据的流向来区分有 1.直接调用(推)A直接B的接口直接将数据推送给B; 2.间接调用(拉)A先调B,B根据A给信息再去调A拉取数据; 感觉间接调用有点多此一举!!! 直接调用的…...
Chinese Spelling Correction as Rephrasing Language Model(AAAI2024)
Chinese Spelling Correction as Rephrasing Language Model(AAAI2024) 一.概述 目前最先进的方法将CSC(Chinese Spelling Correction)作为序列标注任务,并在句子对上微调基于bert的方法。然而,我们注意到在将一个字符标注为另一个字符的过…...
DirectShow过滤器开发-写MP3音频文件过滤器(再写 写MP3)
下载本过滤器DLL 本过滤器将MP3音频流写到MP3音频文件。 过滤器信息 过滤器名称:写MP3_2 过滤器GUID:{AE46BC15-71E5-471C-8540-3B73094111EC} DLL注册函数名:DllRegisterServer 删除注册函数名:DllUnregisterServer 过滤器有1个…...
文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《基于对等架构的虚拟电厂-配电网双层电碳协同调度模型》
本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…...
大数据-204 数据挖掘 机器学习理论 - 混淆矩阵 sklearn 决策树算法评价
点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…...
Fsm1
为了处理有时间上先后的事件,在FPGA中采用状态机的形式完成事件处理。 Mealy 状态机:输出不仅取决于当前状态,还取决于输入状态。 Moore 状态机:组合逻辑的输出只取决于当前状态,而与输入状态无关。 二段式状态机&…...
C. Gorilla and Permutation
time limit per test 2 seconds memory limit per test 256 megabytes Gorilla and Noobish_Monk found three numbers nn, mm, and kk (m<km<k). They decided to construct a permutation†† of length nn. For the permutation, Noobish_Monk came up with the …...
从0开始学python-day17-数据结构2
2.3 队列 队列(Queue),它是一种运算受限的线性表,先进先出(FIFO First In First Out) 队列是一种受限的线性结构 受限之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作 P…...
(蓝桥杯C/C++)—— 编程基础
文章目录 一、C基础格式 1.打印hello, world 2.基本数据类型 二、string 1.string简介 2.string的声明和初始化 3.string其他基本操作 (1)获取字符串长度 (2) 拼接字符串( 或 append) (3)字符串查找(find) (4)字符串替换 (5)提取子字符串…...
企业物流管理数据仓库建设的全面指南
文章目录 一、物流管理目标二、总体要求三、数据分层和数据构成(1)数据分层(2)数据构成 四、数据存储五、数据建模和数据模型(1)数据建模(2)数据模型 六、总结 在企业物流管理中&…...
【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...
AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...
以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
