1.安装mysql容器
#宿主机安装mysql
yum install mysql
#搜索mysql镜像
docker search mysql
#拉取mysql镜像
docker pull docker.io/mysql
#创建mysql容器,MYSQL_ROOT_PASSWORD=root设置root的密码为root
docker run --name=cgy_mysql -it -p 3306:3306 -v /opt/data/mysql/mysqld:/var/run/mysqld -v /opt/data/mysql/db:/var/lib/mysql -v /opt/data/mysql/conf:/etc/mysql/conf.d -v /opt/data/mysql/files:/var/lib/mysql-files -e MYSQL_ROOT_PASSWORD=root --privileged=true -d mysql
#出错报错,可能是宿主机/opt/data/mysql目录的权限问题
docker stop cgy_mysql
docker rm cgy_mysql
#查看/opt/data/mysql/db的用户和组,假设为systemd-bus-proxy:root
ls -a /opt/data/mysql/db
chown -R systemd-bus-proxy:root /opt/data/mysql
#重新创建mysql容器
docker run --name=cgy_mysql -it -p 3306:3306 -v /opt/data/mysql/mysqld:/var/run/mysqld -v /opt/data/mysql/db:/var/lib/mysql -v /opt/data/mysql/conf:/etc/mysql/conf.d -v /opt/data/mysql/files:/var/lib/mysql-files -e MYSQL_ROOT_PASSWORD=root --privileged=true -d mysql
#进入容器,修改root用户允许远程访问,进入容器命令:
docker exec -it 7681b85e73a1 /bin/sh
#登录容器中的mysql
mysql
#修改远程权限
alter user 'root'@'%' identified with mysql_native_password by 'root';
或者
alter user 'root'@'localhost' identified with mysql_native_password by 'root';
#修改root的host
update mysql.user set host = '%' where user = 'root';
#允许远程连接
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
FLUSH PRIVILEGES;
2.安装redis容器
#拉取redis镜像
docker pull redis:latest
#创建redis容器
docker run -itd --name cgy_redis -p 6379:6379 redis:latest
#进入redis容器
docker exec -it cgy_redis /bin/bash