无法连接docker上的mysql
docker pull mysql
docker run --name mysql -p 3306:3306 -e MYSQL_DATABASE="test" -e MYSQL_USER="mysql" -e MYSQL_PASSWORD="123456" -e MYSQL_ROOT_PASSWORD="123456" mysql
docker exec -it mysql /bin/bash
mysql -uroot -p123456
如果需要远程登录的(远程连接用密码123456),需要执行授权命令:
GRANT ALL ON . TO 'root'@'%';
grant all PRIVILEGES on . to root@'%' WITH GRANT OPTION;
ALTER user 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; (使用navicat 连接 mysql 8.0.11 报 "2059 - authentication plugin 'caching_sha2_password' ...")
FLUSH PRIVILEGES;
远程连接的客户机(宿主机)访问DOCKER的服务,地址可以是本机的局域网地址,如果断开网线,可以使用环回网卡地址(端口3306)
环境变量
当启动mysql容器时,我们可以向docker run命令传入一或多个环境变量来调整MySQL实例的配置。可设置的环境变量有:
MYSQL_ROOT_PASSWORD:必须。用于设置MySQLroot用户的密码
MYSQL_DATABASE:可选。用于指定镜像启动容器时要创建的数据库。如果提供了用户/密码,则会将该用户做为此数据库的超级用户。
MYSQL_USER,MYSQL_PASSWORD:可选。用于创建一个新用户并设置密码。
MYSQL_ALLOW_EMPTY_PASSWORD:可选。设置为yes时,则可以使用空密码登录
MYSQL_RANDOM_ROOT_PASSWORD:可选。设置为yes时会为root用户设置一个随机密码(使用pwgen),所生成的随机密码会被输出到stdout
MYSQL_ONETIME_PASSWORD:可选。为root用户指定一个一次性密码,该密码会在用户首次登录时强制修改
{
"debug": true,
"experimental": false,
"registry-mirrors": [
"https://registry.docker-cn.com",
"https://mhpxrekw.mirror.aliyuncs.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
https://www.jianshu.com/p/e5c056baa8ab
kubectl apply -f kubernetes-dashboard.yaml
{TOKEN}"
echo $TOKEN