docker操作镜像-以mysql为例

发布于:2025-05-09 ⋅ 阅读:(16) ⋅ 点赞:(0)

Docker安装使用-CSDN博客 

 docker操作镜像-以mysql为例


当安装一个新的镜像时可以登录https://hub.docker.com/直接搜索想要安装的镜像,查看文档

1)拉取镜像

docker pull mysql   或者 docker pull mysql:版本号

然后直接跳到第4)步即可 

2)错误的启动

docker run --name mysql01 -d mysql

这个只是默认的启动方式,每一个镜像都有自己的配置,记得查看文档

3)正确的启动(没有映射)

按照文档上进行启动

docker run --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql

docker ps

启动成功了,但是访问不了,因为没有与主机地址做映射

停止并删除容器:

docker stop <ID>
docker rm <ID>

4 )做了端口映射的正确启动

docker run -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql

run -d                            // 后台运行
-p 3307:3306                    // 宿主机端口:容器内部端口    云服务器需要开放端口
-e MYSQL_ROOT_PASSWORD=123456    // 设置默认root用户密码为 123456
--name mysql 01                   // 容器名称
mysql                            // 镜像名

若主机3306端口已被占用,且无法释放,可用3307端口 

docker run -p 3307:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql

5)几个高级操作

docker run --name mysql03 -v /conf/mysql:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
把主机的/conf/mysql文件夹挂载到 mysqldocker容器的/etc/mysql/conf.d文件夹里面
改mysql的配置文件就只需要把mysql配置文件放在自定义的文件夹下(/conf/mysql)

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
指定mysql的一些配置参数

6)mysql远程连接需要密码加密 

首先 docker exec -it <容器名称> bash,进入容器 

docker exec -it mysql01 bash

 登录mysql 

mysql -uroot -p123456

成功返回如下:

7)  添加远程用户 

Docker配置Mysql并设置远程连接_docker mysql远程访问-CSDN博客 

添加远程连接用户

alter user 'root'@'%' identified with mysql_native_password by '123456';
  • 修改用户认证方式:将用户 root@% 的身份验证插件设置为 mysql_native_password(旧版密码验证方式)。

  • 设置密码:同时更新用户密码为 123456

 

如果安装的是Mysql5.6左右的版本,使用如下语句
添加远程连接用户

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

 刷新权限

flush privileges;

可以通过Navicat测试连接

8)设置mysql自启动

设置mysql容器自启动

docker update --restart=always <ID>


网站公告

今日签到

点亮在社区的每一天
去签到