利用 Docker 来快速配置数据库(Mysql, MongoD

2019-06-24  本文已影响0人  牛奶加冰ooo

在 Mac 下利用 Docker 来避免繁琐的数据库安装过程,达到开箱即用的效果😚

目前还未设置持久化存储,仅供测试使用,持久化存储需添加卷。另 Docker 网络也未实现,不能容器互联

MySQL

  1. 安装连接 MySQL 的命令行客户端,这里使用的是 mysql-shell
brew cask install mysql-shell
  1. 获取 MySQL 的 Docker 镜像
docker pull mysql
  1. 启动 MySQL (长期使用删掉命令中的 --rm)
docker run --name my-mysql -e MYSQL_ROOT_PASSWORD=haha -d -p 3306:3306 --rm mysql

参数说明:
1. --name: 设置容器名称为 my-mysql
2. MYSQL_ROOT_PASSWORD=haha: 设置数据库的 Root 用户密码为 haha
3. -d: 在后台运行
4. -p 3306:3306: 将容器的 3306 端口(后面那个)映射到本地主机即我们电脑的 3306 端口
5. --rm: 停止容器后立即删除容器

  1. 从命令行连接 MySQL 容器
mysqlsh
\sql # 切换到 SQL 模式,默认为 JS
\connect root@127.0.0.1:3306
  1. 输入刚刚设置的密码 haha 即可连接到数据库
    Screen Shot 2019-06-24 at 9.41.04 PM.png
  2. 也可以直接进入容器查看数据库,这样不需要安装 MySQL shell 客户端
docker exec -it <container id or container name> bash
  1. 进入 MySQL 交互式终端
mysql -u -p
  1. 停止容器
docker container stop <container id or name>
  1. 再次打开容器(不需要再设置相关内容,比如端口转发等)
docker start <container name or id>

MongoDB

  1. 获取镜像
docker pull mongo
  1. 启动服务
docker run --name my-mongo -d -p 27017:27017 mongo
  1. 进入容器
docker exec -it my-mongo bash
  1. 进入 Mongo 交互式终端
mongo
  1. 停止,重启等和 MySQL 一样

Redis

  1. 获取镜像
docker pull redis
  1. 启动服务
docker run -d -p 6379:6379 --name my-redis redis
  1. 进入容器
docker exec -it my-redis bash
  1. 进入 Redis 交互终端
redis-cli
  1. 停止容器,重启和另外二者一样

参考资料📓:
MySQL Docker 官方文档
MongoDB Docker 官方文档
Redis Docker 官方文档

上一篇下一篇

猜你喜欢

热点阅读