docker安装mysql

1. 拉取mysql的镜像

查找自己需要的版本

复制代码
docker search mysql

拉取版本 这里默认为最新的版本

复制代码
docker pull mysql

2. 创建mysql的配置文件和数据文件

复制代码
mkdir -p /temp/mysql/data
mkdir -p /temp/mysql/conf

3. 启动mysql

复制代码
docker run -p 3306:3306 \
  --name mysql \
  -v /temp/mysql/data:/var/lib/mysql \
  -e MYSQL_ROOT_PASSWORD=自己想设置的密码 \
  -d mysql:latest

参数详解:

  • -p 3306:3306
  • -p 是端口映射选项。
  • 3306:3306 表示将主机的 3306 端口映射到容器的 3306 端口。这是 MySQL 的默认端口,允许你从主机连接到容器内运行的 MySQL 服务。
  • --name mysql
  • --name 用于给容器指定一个名称,这里指定为 mysql。这样你可以通过这个名称来管理容器,例如停止、启动、删除等。
  • -v /temp/mysql/data:/var/lib/mysql
  • -v 是挂载卷选项。
  • /temp/mysql/data:/var/lib/mysql 表示将主机上的目录 /temp/mysql/data 挂载到容器内的 /var/lib/mysql 目录。这样 MySQL 数据库的数据会被持久化到主机上的这个目录中,即使容器被删除,数据也不会丢失。
  • -e MYSQL_ROOT_PASSWORD=密码
  • -e 是环境变量选项。
  • MYSQL_ROOT_PASSWORD=1459Hyh. 设置了 MySQL 数据库的 root 用户密码为 1459Hyh.。这是 MySQL 容器启动时所需要的一个环境变量,用于初始化数据库的管理员密码。
  • -d
  • -d 是后台运行选项。
  • 这个选项表示容器将以守护进程(即后台)模式运行,这样你不会被容器的输出信息所打扰,并且命令行会立即返回。

查看是否启动:

复制代码
docker ps

连接需要开放安全组的33066端口或者关闭防火墙

4. 远程连接测试

可以看到是能连接成功

相关推荐
modelmd28 分钟前
mysql not in 查询引发的bug问题记录
sql·mysql
GOKORURI35 分钟前
Podman + Nginx + Affine 踩坑教程
容器·教程·web
小刘|44 分钟前
腾讯云服务上下载docker以及使用Rabbitmq的流程
docker·rabbitmq·腾讯云
云途行者1 小时前
使用 docker 安装 openldap
运维·docker·容器
会编程的林俊杰1 小时前
MySQL中的锁有哪些
数据库·mysql
退役小学生呀1 小时前
十五、K8s可观测能力:日志收集
linux·云原生·容器·kubernetes·k8s
Andy杨2 小时前
20250718-5-Kubernetes 调度-Pod对象:重启策略+健康检查_笔记
笔记·容器·kubernetes
Andy杨3 小时前
20250718-1-Kubernetes 应用程序生命周期管理-应用部署、升级、弹性_笔记
linux·docker·容器
别致的影分身9 小时前
Docker 镜像原理
运维·docker·容器