创建 oracle 用户(uid 和 gid 对应容器中的 oracle 用户的 uid 和 gid,不要随意改动,否则会有文件权限问题):
$ userdel -r oracle
$ groupadd -g 500 oinstall
$ groupadd -g 501 dba
$ groupadd -g 502 oper
$ useradd -g oinstall -G dba,oper -u 500 oracle
$ passwd oracle
oracle 加入 sudoers:
$ vim /etc/sudoers
...
...
root ALL=(ALL) ALL
oracle ALL=(ALL) ALL # 增加这一行
...
...
安装 docker:
$ yum install docker
$ systemctl start docker #启动
$ systemctl enable docker#自启动
拉取 oracle 11g 镜像:
$ docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
运行 oracle 11g 容器(注意不要用 root 用户运行,用刚创建的 oracle 用户运行,否则会有文件权限问题):
$ su - oracle
$ sudo docker run -d -name oracle -p 1521:1521 -v /data/oradata:/oradata registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
进入容器:
$ sudo docker exec -it /bin/bash
$ su - oracle
$ 密码:oracle
$ sqlplus / as sysdba
注意:宿主的 /data/oradata 文件夹映射到容器中的 /oradata 文件夹,可以把需要和容器交换的文件放在 /data/oradata 中,容器的 /oradata 会自动映射出来
网友评论