Docker学习笔记(一)——常用命令

前言

Docker是什么?对于我这个初学者来说,我暂时把它认为是一个能把开发的程序和它的运行环境打包在一起,然后自动部署在一个容器中,不做任何配置,依然能够正常运行。

​ 摘自其他地方的Docker 定义:

​ Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

常见操作命令

官方文档

命令说明
docker pull拉取镜像
docker push推送镜像到DockerRegistry
docker images查看本地镜像
docker rmi删除本地镜像
docker run创建并运行容器(不能重复创建)
docker stop停止指定容器
docker start启动指定容器
docker restart重新启动容器
docker rm删除指定容器
docker ps查看容器
docker logs查看容器运行日志
docker exec进入容器
docker save保存镜像到本地压缩文件
docker load加载本地压缩文件到镜像
docker inspect查看容器详细信息

Navicat连接Docker容器内MySQL出现的问题

1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
通过上网查找,发现是我的Navicat的版本太老的问题,而我的是MySQL8,错误原因:

  • MySQL8之前的版本中加密规则是mysql_native_password,而在MySQL8之后,加密规则是caching_sha2_password

所以解决办法有两个:

  1. 升级Navicat版本
  2. 修改加密规则

我选择了还原加密规则的方法:

  1. 首先进入Docker中的mysql
  2. 输入以下代码(password填自己密码)
#设置密码永不过期
 alter user 'root'@'%' identified by 'password' password expire never;
#修改验证方法
 alter user 'root'@'%' identified with mysql_native_password by 'password';
#刷新权限配置。
 flush privileges; 

然后Navicat连接Docker中的MySQL容器成功

尾言

个人学习笔记,持续更新,有问题处请帮我指出。

  • 14
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值