前言

Linux 安装 Oracle 太麻烦了,还需要去官网下载,官网下载需要登录 Oracle 账号,下载后还需要上传安装,而使用 Docker 安装更简单,下面就是整个安装过程。

更新 Yum 源

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
# 备份原有Yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

# 选择和配置新的Yum源

# 阿里云镜像源
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 网易镜像源
# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS-Base.repo # 清华大学镜像源
# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.tuna.tsinghua.edu.cn/help/centos/7/.repo

# 更新Yum缓存
# 清除旧的缓存并生成新的缓存,以确保Yum能够正确识别新的源
yum clean all
yum makecache

# 测试Yum源
# 正常显示软件包列表,说明Yum源配置成功
yum list

Docker的安装

安装Docker

1
2
3
4
5
6
7
8
#安装Docker所需的依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
#添加Docker的Yum仓库地址为阿里云镜像站点,用于获取Docker软件包
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装指定版本的Docker软件包
yum -y install docker-ce-18.03.1.ce 
#检测是否成功
docker version

启动 Docker

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
# 启动 Docker
systemctl start docker
# 停止docker
# systemctl stop docker
# 重启docker
# systemctl restart docker

# 查看 Docker 状态
# active 说明 Docker 已经启动
systemctl status docker

# 开机启动 Docker
systemctl enable docker
# 关闭开机启动
# systemctl disable docker

Docker 国内可用镜像源仓库地址配置

Linux 用户,需要手动修改 Docker 的配置文件来添加镜像源

打开配置文件 vi /etc/docker/daemon.json(如果没有该文件,可以新建一个)

将以下内容粘贴进去:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
{
  "registry-mirrors": [
    "https://docker.hpcloud.cloud",
    "https://docker.m.daocloud.io",
    "https://docker.unsee.tech",
    "https://docker.1panel.live",
    "http://mirrors.ustc.edu.cn",
    "https://docker.chenby.cn",
    "http://mirror.azure.cn",
    "https://dockerpull.org",
    "https://dockerhub.icu",
    "https://hub.rat.dev"
  ]
}

保存文件后,重新启动 Docker 服务

1
2
3
4
5
6
7
8
9
# 加载配置
systemctl daemon-reload

# 重启docker服务
systemctl restart docker

# 测试配置效果
# 如果输出显示配置的镜像源地址,说明设置成功!
docker info

Oracle 的安装

获取镜像

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
# 或者 docker pull registry.aliyuncs.com/helowin/oracle_11g

# 查看下载
docker images

# 查看磁盘空间占用情况
# df -h
# 查看 Docker 容器、镜像、卷等资源的占用情况
# docker system df

# 清理, 支持同时删除多个, 添加 -f 参数表示强制删除
# docker rmi <IMAGE ID>
# 清理所有废弃镜像与Build Cache
# docker system prune -a

运行镜像

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
docker run -itd -p 1521:1521 --name oracle --restart=always --mount source=oracle_vol,target=/home/oracle/app/oracle/oradata -e ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2 -e ORACLE_SID=helowin registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:latest

# 检查镜像是否启动成功,添加 -a 参数 ,可以列出停止的镜像
docker ps

# 停止镜像
# docker stop <CONTAINER ID>

# 重启镜像
# docker restart <CONTAINER ID>