win10-docker-mysql镜像安装运行基础

win10-docker-mysql镜像安装运行基础

文章目录

一、搜索可用镜像

1.1 查询mysql镜像

docker search mysql

复制代码
>docker search mysql
NAME                            DESCRIPTION                                      STARS     OFFICIAL   AUTOMATED
mysql                           MySQL is a widely used, open-source relation...   14406     [OK]
mariadb                         MariaDB Server is a high performing open sou...   5500      [OK]
percona                         Percona Server is a fork of the MySQL relati...   619       [OK]
phpmyadmin                      phpMyAdmin - A web interface for MySQL and M...   854       [OK]
bitnami/mysql                   Bitnami MySQL Docker Image                       96                   [OK]
...

查找结果说明:

  • NAME 镜像名
  • STARS 关注度
  • OFFICIAL 是否官方镜像

1.2 确定镜像版本号

因为通过 docker search 并不能查看某个镜像的版本信息,如我需要特定版本的 mysql 那怎么办呢~

  • 方式 1
    • 通过 Docker Hub要想查看镜像的版本和TAG,需要在 docker hub 查看
    • 地址如下:https://hub.docker.com
    • 进入之后,在页面左上角搜索框搜索,例如搜索mysql
    • 点击查看详情
    • 点击Tags,即可看见所有的版本
    • 找到Tags 后,就可以根据需要的版本来下载了。如tags为5.6的版本
    • 按照 Docker 的格式来拉取不同 tags 的 mysql 镜像,用冒号隔开
    • docker pull mysql:5.6
  • 方式 2,通过官网查看版本号信息
  • 方式 3,通过尝试加版本号猜测
    • 以 mysql 为例:我们从官网上知道了 mysql 有 5.6 版本 和 8.0 版本,再结合 Docker 的规则(以:分割),就可以猜测到拉取

    • mysql 5.6 的命令如下:

      拉取 mysql 最新版本镜像 ,默认tag = latest

      docker pull mysql:latest

      拉取 mysql 5.6 镜像

      docker pull mysql:5.6

      拉取 mysql 8.0 镜像

      docker pull mysql:8.0

二、运行mysql容器

复制代码
#首次运行
docker run -p 3306:3306 --name x_mysql_5_6 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6
run命令解释:
    -p 3306:3306 #指定端口映射,格式为:主机(宿主)端口:容器端口
    --name x_mysql_5_6  #为容器指定一个名称,名字叫xxxxx;
    -e MYSQL_ROOT_PASSWORD=123456   #设置环境变量,参数用于设置 MySQL 的 root 用户密码
    -d #后台运行
    -v: 绑定一个卷

#启动一个已停止的容器
docker start x_mysql_5_6

#停止容器
docker stop x_mysql_5_6

#重启容器
docker restart x_mysql_5_6

#查看已运行的容器
docker ps

2.1 进入mysql

  • 方法一:在docker中进入
    • 打开docker选择images,查看镜像列表;
    • 镜像mysql:5.6的status列点击In use进入容器列表;
    • 点击刚运行的容器x_mysql_5_6,进入容器管理页;
    • 点击terminal进入该容器命令行界面;
  • 方法二:本机命令行进入
    • 语法:docker exec OPTIONS Container Command Args...
    • 执行:docker exec -it x_mysql_5_6 mysql -uroot -p
    • exec命令说明:
      • -it 参数用于进入容器的交互模式;
      • mysql -uroot -p 需要一起看,为mysql标准命令行命令+参数,表示进入容器后执行的命令;
      • 进入后可以在本地控制台中操作容器中的mysql数据库了!
  • 方法三:进入容器系统控制台
    • 执行:docker exec -it x_mysql_5_6 /bin/bash

2.2 测试mysql是否正常

  • 执行如下命令:
    • 三种登录命令,登录到mysql控制台:
      • mysql -u root -p //登录到MySQL服务器
      • mysql -u root -p database_name //连接到指定的MySQL数据库
      • mysql -h remote_mysql_host_ip -u root -p //登录到远程MySQL服务器
      • 上述三个命令执行后都需要数据库root账号的登录密码(运行时MYSQL_ROOT_PASSWORD参数指定的密码)
      • 登录成功后显示:Welcome to the MySQL monitor.提示
    • 执行以下命令
      • show databases; //查看所有数据库名
      • use mysql; //使用mysql库
      • show tables; //查看库中的所有表名
      • 退出执行:exit 或 ctrl+c

三、将mysql数据存储目录映射到宿主机做持久化

对已经运行的容器更改目录映射不太方便,这里采用删除重新运行的方式;

  • 容器名:x_mysql_5_6;
  • 宿主机目录:D:\docker\x_mysql_5_6\data
  • 映射命令:-v D:\docker\x_mysql_5_6\data:/var/lib/mysql
    • /var/lib/mysql为容器的默认数据目录

      #停止容器
      docker stop x_mysql_5_6
      #产品容器状态
      docker ps -a
      #删除容器
      docker rm -f x_mysql_5_6
      #重新运行容器
      docker run -d -p 3306:3306 --name x_mysql_5_6 -e MYSQL_ROOT_PASSWORD=123456 -v D:\docker\x_mysql_5_6\data:/var/lib/mysql mysql:5.6

相关推荐
暮云星影几秒前
个人总结 docker搭建私人照片云相册Immich
docker·容器·arm
AI服务老曹1 分钟前
破局异构计算与海量协议:基于 Docker 容器化的国标 GB28181/RTSP 边缘计算 AI 视频管理平台架构设计与源码交付实践
人工智能·docker·边缘计算
江湖有缘4 分钟前
Docker一键部署open-resume简历生成器
运维·docker·容器
snow@li6 分钟前
数据库:MySQL vs PostgreSQL 详尽对比(2026版)
java·mysql·postgresql
丑过三八线10 分钟前
Runc 深度解析:从原理到实操
java·linux·开发语言·docker·容器·rpc
xieliyu.42 分钟前
MySQL 全套入门笔记:基础、库操作、数据类型
数据库·笔记·mysql
设计师小聂!1 小时前
Windows 系统 Docker 安装与配置指南
windows·docker·容器
invicinble1 小时前
sql层面语法的总结(mysql层面语法,主要侧重于sql的查询相关的信息量积累)
sql·mysql·oracle
2601_961845151 小时前
专升本资料哪个好|教材+真题+网课对比推荐PDF
考研·http·微服务·容器·visual studio
“码”力全开1 小时前
解密企业级智能视频中台:基于 Docker 与边缘计算的 GB28181/RTSP 异构架构设计(支持源码交付)
docker·音视频·边缘计算