安装mysql
下载最新版mysql镜像: docker pull mysql
-
运行mysql镜像产生容器:
docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /Users/tanyuanchao/docker/mysql/data:/var/lib/mysql mysql
参数 解释 -t 为容器重新分配一个伪输入终端,通常与 -i 同时使用; -d 后台运行容器,并返回容器ID; -v 路径映射,前面为宿主机地址,后面为容器中的地址(后面地址存的数据会映射到宿主机对应的地址里) -i 以交互模式运行容器,通常与 -t 同时使用; 直接可以通过账号root和密码123456进行远程连接
安装mongo
下载罪行版mongo镜像:docker pull mongo
-
运行mongo镜像产生容器
docker run -itd --name mongo -p 27017:27017 -v /Users/tanyuanchao/docker/mongo/data:/data/db mongo --auth
参数 解释 --auth 表示访问数据库需要密码认证,不加这个参数表示可以直接访问mongo数据库 进入系统admin数据库:docker exec -it mongo mongo admin
-
创建超级管理员
db.createUser( { user: "root", pwd: "123456", roles: [ { role: "root", db: "admin" } ] } );
通过root用户登录,否者后面创建别的数据库用户会失败:db.auth("root","123456")
切换数据库(这里的pet是自己新建的数据库):use pet
-
创建一个pet的专用用户:(相当于一个管理员只能对pet数据库进行读写)
db.createUser( { user: 'admin', pwd: '123456', roles: [ { role: "readWrite", db: "pet" } ] } );
这里算创建完成,可以通过远程工具进行连接