mac M1 创建Mysql8.0容器

MySLQ8.0

拉取m1镜像

bash 复制代码
docker pull mysql:8.0

创建挂载文件夹并且赋予权限

b 复制代码
sudo chmod 777 /Users/zhao/software/dockerLocalData/mysql 

创建容器并且挂载

java 复制代码
docker run --name mysql_8 \
    -e MYSQL_ROOT_PASSWORD=admin \
    -v /Users/zhao/software/dockerLocalData/mysql/:/var/lib/mysql \
    -p 3306:3306 \
    -d mysql:8.0

以下是参数的解释:

  • --name mysql8.0:为容器指定一个名称 mysql8.0
  • -e MYSQL_ROOT_PASSWORD=your_password:设置 MySQL 的 root 用户密码。将 your_password 替换为您希望设置的密码。
  • -v /Users/zhao/Documents/Docker挂载文件/Mysql/:/var/lib/mysql:将本地目录 /Users/zhao/Documents/Docker挂载文件/Mysql/ 挂载到容器中的 /var/lib/mysql,这是 MySQL 存储数据的位置。
  • -p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口,允许外部访问 MySQL。
  • -d mysql:8.0:后台运行容器,并使用 MySQL 8.0 镜像。

运行上述命令后,Docker 将下载 MySQL 8.0 镜像并启动一个 MySQL 容器,数据将被保存到您指定的本地目录。创建镜像成功后,这个目录多出来这些文件就说明挂载成功了。即使之后容器不小心被删除了,但是只要新的镜像也挂在这个文件夹的话就可以实现直接使用之前镜像的数据库了。相当于把数据库的存储地址从容器内映射到了我们本地的一个文件夹。

如图:mysql8.0 就运行起来啦

相关推荐
javaGHui1 小时前
macOS 上获取调试版
macos
Wang's Blog2 小时前
Nestjs框架: 微服务容器化部署与网络通信解决方案
docker·微服务·云原生·架构·nestjs
脚踏实地的大梦想家2 小时前
【Docker】P2 Docker 命令:从Nginx部署到镜像分享的全流程指南
java·nginx·docker
极限实验室3 小时前
使用 Docker Compose 轻松实现 INFINI Console 离线部署与持久化管理
docker·devops
天地之于壹炁兮5 小时前
Docker革命:软件开发的集装箱时代
docker·容器·eureka
勇往直前plus5 小时前
Docker 拉取镜像:SSL 拦截与国内镜像源失效问题解决
docker·容器·https·ssl
2501_915918415 小时前
iOS描述文件功能解析
android·macos·ios·小程序·uni-app·cocoa·iphone
醉卧雕龙舫 、6 小时前
五.docker环境搭建实例
docker
缘的猿8 小时前
kubectl 学习心得:从入门到实践的 K8s 命令行掌控之旅
云原生·容器·kubernetes
老友@9 小时前
Docker 部署 Node.js + Playwright 项目,实现浏览器截图、打印和下载
docker·容器·node.js·playwright