【Docker】Docker上安装MySql8和Redis

MySql安装

对于镜像中需要持久化保存的⽂件,需要通过-v挂载到宿主机上,这样这些⽂件才不会随着容器关闭⽽消失。
对于MySQL,需要将他的⽇志⽂件、数据⽂件和配置⽂件挂载到宿主机上。

bash 复制代码
# 拉取镜像
docker pull mysql:8
# 启动mysql并配置⼯作⽬录。将容器中的⼯作⽬录挂载到本机,这样这些数据⽂件才能持久化保存。
docker run -p 3306:3306 --name mysql8 -v /app/docker/mysql/log:/var/log/mysql -v /app/docker/mysql/data:/var/lib/mysql -v
/app/docker/mysql/conf:/etc/mysql -v /app/docker/mysql/mysql-files:/var/lib/mysql-files -e MYSQL_ROOT_PASSWORD=root -d mysql:8
# MySQL默认只能在本机登录,也就是只能从容器内登录。需要调整权限,允许远程访问。
docker container ls #获取容器ID
# 进⼊容器
docker exec -it 29387949bc43 /bin/bash
# 在容器内登录MySQL 。 不要输密码
mysql -u root
# 调整MySQL,允许远程连接
mysql> use mysql;
mysql> grant all PRIVILEGES on *.* to root@'%' WITH GRANT OPTION;
mysql> update user set host='%' where user='root';
mysql> ALTER user 'root'@'%' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER;
mysql> ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
mysql> flush privileges;
# 如果都正常执⾏,那么MySQL服务就可以⽤客户端⼯具远程登录了。

Redis安装

同样,需要注意将Redis的配置⽂件和⽇志⽂件挂载到宿主机上。

bash 复制代码
docker pull redis:latest
# 将Redis的配置⽂件和数据⽂件挂载到宿主机上
docker run -p 6379:6379 --name redis -v /Users/roykingw/docker/redis/config:/etc/redis.conf -v
/Users/roykingw/docker/redis/data:/app/redis -d redis redis-server /etc/redis.conf
# 如果正常执⾏,那么Redis的服务就可以⽤客户端⼯具远程登录了。
相关推荐
dys_Codemonkey6 小时前
如何在树莓派上用 VS Code 优雅直连内部的 Ubuntu 子系统/容器用来访问容器内的文件和代码?
linux·运维·ubuntu·树莓派
张道宁6 小时前
Windows 环境下 Docker 部署 YOLOv8 并集成 Spring Boot 完整指南
windows·yolo·docker
上海合宙LuatOS7 小时前
LuatOS核心库API——【 string】字符串操作
运维·服务器·物联网·junit·硬件工程·信息与通信·嵌入式实时数据库
徐子元竟然被占了!!7 小时前
Linux的cat
linux·运维·服务器
带娃的IT创业者7 小时前
WeClaw 离线消息队列实战:异步任务队列如何保证在服务器宕机时不丢失任何一条 AI 回复?
运维·服务器·人工智能·python·websocket·fastapi·实时通信
kc胡聪聪8 小时前
nginx的性能优化与监控
运维·nginx·性能优化
丈剑走天涯8 小时前
kubernetes java app 部署使用harbor私服 问题集合
java·容器·kubernetes
上海合宙LuatOS8 小时前
LuatOS核心库API——【sys】LuatOS运行框架
运维·服务器·物联网·硬件工程·lua·软件工程·信息与通信
运维行者_9 小时前
网络监控方案从零开始 -- 企业级完整指南
大数据·运维·服务器·网络·数据库·人工智能·自动化
IMPYLH10 小时前
Linux 的 b2sum 命令
linux·运维·服务器·bash