修改docker数据存储目录及拉取镜像安装oracle19c

一、修改docker数据目录,默认安装路径为/var/lib/docker

查看docker主路径

bash 复制代码
docker info |grep "Docker Root Dir"


1.停服务

bash 复制代码
systemctl stop docker

2.新建目录并授权

bash 复制代码
mkdir /data/docker -p
chown -R root:docker /data/docker/


3.修改配置文件
原有{}内添加如下行

bash 复制代码
vi /etc/docker/daemon.json 
{
  "graph": "/data/docker" 
}

4.起服务查看路径

bash 复制代码
systemctl start docker
docker info |grep "Docker Root Dir"

部署oracle19c

二、通过docker容器部署oracle19c

5.拉取oracle19c的镜像

bash 复制代码
docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

6.新建主机上的目录

bash 复制代码
mkdir -p /data/docker/oracle19c/oradata
chmod 777  /data/docker/oracle19c/oradata

7.构建容器并启动

bash 复制代码
docker run -d -p 1521:1521 -p 1688:1688 -e ORACLE_SID=lcims80 -e ORACLE_PDB=ORCLPDB -e ORACLE_PWD=oracle -e ORACLE_EDITION=standard -e ORACLE_CHARACTERSET=AL32UTF8 -v /data/docker/oracle19c/oradata:/opt/oracle/oradata --name oracle_19c registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

8.构建容器命令解释

css 复制代码
docker run: 运行 Docker 容器的命令。

-d: 指定容器在后台运行(detached mode)。

-p 1521:1521: 将容器的 1521 端口映射到主机的 1521 端口,Oracle 数据库监听端口。

-p 1688:1688: 将容器的 1688 端口映射到主机的 1688 端口,用于访问的端口。

-e ORACLE_SID=ORCLCDB: Oracle 实例的 SID。

-e ORACLE_PDB=ORCLPDB: 设置 Oracle PDB。

-e ORACLE_PWD=oracle: 设置 Oracle 系统用户 SYS 和 SYSTEM 的初始密码为 oracle。

-e ORACLE_EDITION=standard: 设置 Oracle 的版本为标准版(standard)。

-e ORACLE_CHARACTERSET=AL32UTF8: 设置 Oracle 数据库的字符集为 AL32UTF8,即 Unicode 字符集。

-v /data/docker/oracle19c/oradata:/opt/oracle/oradata/: 将主机上的 /data/docker/oracle19c/oradata 目录挂载到容器内的 /opt/oracle/oradata/ 目录,用于持久化存储数据库文件。

--name oracle_19c: 指定容器的名称为 oracle_19c。

9.容器中oracle_19c已在运行

10.查看容器构建的日志

bash 复制代码
docker logs -ft oracle_19c

此过程预计20分钟,我这是本地虚拟机,具体在服务器性能

11.登录oracle容器

bash 复制代码
[root@localhost oradata]# docker exec -it oracle_19c /bin/bash
[oracle@9c50064104f3 ~]$ ##此时已进入容器,主机名处为容器id

进入容器后可直接sqlplus登录数据库

相关推荐
Tim风声(网络工程师)2 小时前
排查内网互联网访问流程
运维·服务器·网络
坚持就完事了3 小时前
Linux中如何添加环境变量
linux·运维·服务器
AC赳赳老秦4 小时前
政企内网落地:OpenClaw 离线环境深度适配方案,无外网场景下本地化模型对接与全功能使用
java·大数据·运维·python·自动化·deepseek·openclaw
l1t4 小时前
mingw和Linux中的gcc和llvm编译器编译的pocketpy执行同一个python脚本的不同效果
linux·运维·python
ITyunwei09874 小时前
团队管理与人才发展:如何打造一支“召之即来,来之能战”的铁军?
大数据·运维·人工智能
白緢4 小时前
一、Linux 基础入门
linux·运维·服务器
Deepoch5 小时前
面向工业现场自主运维:Deepoc 具身模型开发板的端侧智能升级路径
运维·人工智能·科技·巡检机器人·deepoc
菜菜艾5 小时前
自动化环境补丁更新系统
linux·运维·bash·运维开发
江上清风山间明月5 小时前
Nginx基于域名区分的多网站部署
运维·nginx·部署·php·多个网站
团象科技6 小时前
2026出海趋势观察:国际云服务器推荐重构企业全球化经营底盘
运维·服务器·重构