1、下载并安装docker
docker下载地址
下载后直接双击安装即可 安装后需要登录 没有账号的话去docker官网注册一个
2、下载镜像
2.1申请镜像加速器
直接下载官方镜像也可以 但是据说会很慢 可先去阿里云管理控制台配置阿里镜像加速器。
登录后设置一下登录密码就可以获取到加速器地址了
查看加速器地址
2.2启动docker 配置镜像加速器
应用程序中打开docker 然后右键点击桌面顶栏的 docker 图标,选择 Preferences -> Daemon 标签
镜像加速器配置
- Insecure registries写成:registry.mirrors.aliyuncs.com
- Registry mirrors 列表中将镜像地址https://ptvp0e1r.mirror.aliyuncs.com(这个地址每个人不相同,替换成自己刚刚步骤中申请的)添加到"registry-mirrors"的数组里,点击 Apply & Restart按钮保存并重启docker即可.
2.3下载镜像
终端输入以下命令行下载镜像
xhkjdeimac-2:~ xhkj$ docker pull alexeiled/docker-oracle-xe-11g
下载oracle 11g镜像失败
如果下载失败报以上的错 说明docker未登录或者没有配置加速器 检查docker是否登录或者加速器是否配置成功 重新执行该命令应该就可以了.
下载oracle 11g镜像成功
3、启动指定镜像为容器
xhkjdeimac-2:~ xhkj$ docker run -h "oracle" --name "oracle" -d -p 49160:22 -p 49161:1521 -p 49162:8080 alexeiled/docker-oracle-xe-11g
此时如果报以下错误
请参考此篇文章解决启动指定镜像为容器时提示端口被占用的解决方案
容器指定成功后会有以下提示
容器指定成功
此时打开docker -> kitematic ->左侧栏选择刚刚创建的oracle(未登录的话先登录) -> setting会看到和上一步指定容器后生成的ID相同的oracle镜像
docker镜像容器查看器
oracle镜像查看详情
4、进入容器并启动Oracle
xhkjdeimac-2:~ xhkj$ docker exec -it 16492a86bf07 /bin/bash
16492a86bf07是容器id,可使用docker ps命令获得.
xhkjdeimac-2:~ xhkj$ docker ps
获取容器id
启动oracle后执行登录操作
root@oracle:/# sqlplus system/oracle
oracle登录
此时已经进入数据库 可以尝试做一些操作了
5、进入数据库后执行一些操作
查询数据库中所有用户
SQL> select username,password from dba_users;
DBA_* 描述的是数据库中的所有对象
创建一个用户名为deque 密码为123的新用户
SQL> create user deque identified by 123;
创建一个新用户
查看当前用户有访问权限的所有用户
SQL> select * from all_users;
ALL_* 描述的是当前用户有访问权限的所有对象
给新用户授权
connect:是保证该用户能连接数据库;
resource:是该用户可以使用数据库资源。
grant connect,resource to deque;
授权新用户
删除用户
oracle数据库是基于用户去创建表,可用命令drop user deque;删除用户
当前连接数据库的用户必须具有删除用户权限(如sys)才能执行删除操作。
drop user deque;
停止或启动服务
docker stop oracle
docker start oracle
网友评论