Mac M系列芯片制作Oracle19镜像使用docker-compose运行

Mac M系列使用docker-compose制作Oracle19c镜像

环境说明:本文测试环境为MacBook Pro(M2芯片),运行macOS Sonoma 14.8.1系统

Docker、docker-compose安装步骤省略。

一、拉取官方镜像构建仓库

  • git命令下载(推荐)
bash 复制代码
git clone https://github.com/oracle/docker-images.git
  • git下载压缩包

二、Oracle 数据库安装包下载

三、构建镜像

bash 复制代码
cd docker-images/OracleDatabase/SingleInstance/dockerfiles
# 执行构建命令,等待完成即可
./buildContainerImage.sh -v 19.3.0 -e

# 执行完成后可通过docker命令查看镜像
docker images

四、编写docker-compose文件

yaml 复制代码
services:
  oracle19c:
    image: oracle/database:19.3.0-ee
    container_name: oracle19c
    environment:
      - ORACLE_SID=ORCLCDB
      - ORACLE_PDB=ORCL
      - ORACLE_PWD=oracle
      - ORACLE_CHARACTERSET=AL32UTF8
      - TZ=Asia/Shanghai
    ports:
      - "1521:1521"   # SQL*Net
      - "5500:5500"   # Enterprise Manager Express
    volumes:
      - ./oradata:/opt/oracle/oradata   # 数据持久化目录
      #- ./scripts/setup:/opt/oracle/scripts/setup   # 可选:初始化脚本目录
      #- ./scripts/startup:/opt/oracle/scripts/startup # 可选:启动脚本目录
    restart: always

五、使用docker-compose启动oracle19c镜像

bash 复制代码
# 进入到docker-compose所在文件夹下执行(此过程稍微会比较慢,因为需要初始化数据库)
docker-compose up -d

# 查看容器启动状态
docker ps -a

六、连接oracle配置

bash 复制代码
# 地址:localhost
# 端口:1521
# 服务名:ORCL
# SID: orclcdb
# 用户名:system
# 密码:oracle
# SID方式连接
jdbc:oracle:thin:@localhost:1521:orclcdb
# 服务名方式连接
jdbc:oracle:thin:@//localhost:1521/orcl

七、查看相关服务命令

bash 复制代码
# 进入容器内部
docker exec -it oracle19c bash
# 查看当前 Oracle 数据库监听器(Listener)的状态信息
lsnrctl status
# 暂停监听
lsnrctl stop
# 启动监听
lsnrctl start
# 登陆oracle
sqlplus / as sysdba
# 启动 Oracle 数据库实例
startup;
相关推荐
你的不安16 小时前
Docker相关知识
docker·容器
淬炼之火17 小时前
基于Docker Desktop 和 Ubuntu 在 Windows上部署轻量化大模型(Qwen-LLM)
笔记·ubuntu·docker·语言模型·容器
是火云哦17 小时前
打包你的开发环境:Docker 从入门到上瘾
运维·docker·容器
小明_GLC18 小时前
关于租用阿里云服务器拉取Docker镜像的问题
docker
今晚打佬虎18 小时前
精准阻断 Docker 容器映射端口:流量路径诊断与 iptables 配置
运维·docker·容器
那年一路北18 小时前
基于 Maven + Docker 的 WebApp 打包与部署
docker·maven·web app
阡陌..18 小时前
Linux下用docker调用pytorch-无法检测到cuda问题
linux·pytorch·docker
KubeSphere 云原生19 小时前
在 KubeSphere 上运行 Moltbot(Clawdbot):自托管 AI 助手的云原生实践
docker·云原生·容器
你才是臭弟弟19 小时前
生产环境开箱即用的“Flink + Iceberg 数据湖容器搭建”(Docker)
docker·容器·jar
Laughtin20 小时前
macos命令行更换终端代理的方法
macos·bash·mac