Docker Oracle

创建 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 会自动映射出来

你可能感兴趣的:(Docker Oracle)