admin管理员组文章数量:1544070
介绍:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。通过本文可以学习到如何本地连接docker中的mysql。
-
mac
第一步:安装docker
1、官网安装
https://www.docker/get-started/https://www.docker/get-started/2、homebrew 安装
brew install --cask --appdir=/Applications docker
#安装好后输入 检查是否安装成功 结果如下成功
docker -v
第二步:拉取镜像
1、输入 docker images 查看本地镜像,如图1 为空。
2、输入 docker seach mysql 查找mysql可用镜像如图2。
3、输入 docker pull mysql:latest 拉取mysql,如图3。
4、输入 docker images 检查镜像 可查看到多了一个mysql,如图4。
第三步:启动容器
docker run -itd --name mysql-docker -p 33060:3306 -e MYSQL_ROOT_PASSWORD=root mysql
docker run: 启动容器。
-itd :后台启动虚拟交互窗口。
--name : 启动容器名字 后续可以通过其停止容器运行
-p 33060:3306:将主机机器上的端口 33060映射到容器上的端口 3306。可以使用本机上的端口 33060 连接到容器中的 MySQL 服务器
-e MYSQL_ROOT_PASSWORD=root : 设置环境变量,设置容器内mysql服务器的密码为root。
mysql:这是要使用的 Docker 镜像的名称,从这个镜像创建容器。
第四步:测试连接
1、终端连接: 注意这里不要使用 localhost ,使用 127.0.0.1, 输入密码 root
mysql -h 127.0.0.1 -P 33060 -u root -p
2、第三方工具连接:这边可以用localhost
-
Window (10以上)
第一步:安装docker
Install Docker Desktop on Windows | Docker DocsGet started with Docker for Windows. This guide covers system requirements, where to download, and instructions on how to install and update.https://docs.docker/desktop/install/windows-install/
安装好,双击鲸鱼小图标打开应用,可能需要先登录 ,完成后输入 docker -v 检查版本 docker images 检查镜像
第二步:拉取镜像
拉去镜像前先输入 docker search mysql 查找mysql镜像源 ,输入 docker pull mysql 将mysql镜像拉取至本地,下载成功后输入 docker images 查看本地镜像 多了一个mysql ,成功
第三步:启动mysql容器
## mac处有解释
## 将本地的33060的端口映射到容器的3306端口
## 设置了mysql密码 root
docker run -itd --name docker_mysql -p 33060:3306 -e MYSQL_ROOT_PASSWORD=root mysql
输入 docker ps -a 查看刚启动的mysql容器 可以看到,这里有一个mysql已经启动了,我们可以尝试连接了。
第四步:测试连接
1、终端连接
mysql -h localhost -P 33060 -u root -p
输入启动容器设置的密码root 可以看到这里成功了
2、第三方工具连接
我使用的是Navicate Premium连接,中途出现了 Authentication plugin ‘caching_sha2_password的问题。不知是否由于本地也安装了mysql5.7的原因导致,gpt说是mysql8.0导致。
成功解决 如果遇到上述情况
本地终端连接进入mysql,输入
## 这里的 root root 是我们登录mysql的用户名密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
## 刷新一下
FLUSH PRIVILEGES;
## 退出mysql
exit;
docker常用命令
1、镜像相关命令:
docker images:列出本地的 Docker 镜像。
docker pull <image>:从 Docker Hub 或其他仓库拉取镜像。
docker rmi <image>:删除本地的 Docker 镜像。
2、容器相关命令:
docker ps:列出正在运行的容器。
docker ps -a:列出所有容器,包括已停止的。
docker run <options> <image>:运行一个容器。
docker exec -it <container> <command>:在正在运行的容器中执行命令。
docker stop <container>:停止一个运行中的容器。
docker rm <container>:删除一个容器。
3、网络相关命令:
docker network ls:列出 Docker 网络。
docker network create <network>:创建一个自定义网络。
docker network connect <network> <container>:将容器连接到网络。
docker network disconnect <network> <container>:将容器从网络断开。
4、数据卷相关命令:
docker volume ls:列出 Docker 数据卷。
docker volume create <volume>:创建一个数据卷。
docker run -v <host-path>:<container-path>:挂载数据卷到容器中。
5、构建和发布命令:
docker build -t <tag> <path>:基于 Dockerfile 构建镜像。
docker push <image>:将镜像推送到 Docker Hub 或其他仓库。
6、日志和信息命令:
docker logs <container>:查看容器的日志。
docker inspect <container>:获取有关容器的详细信息。
7、清理命令:
docker system df:显示 Docker 占用的磁盘空间。
docker system prune:清理未使用的资源,包括停止的容器、未被使用的镜像等。
版权声明:本文标题:连接docker镜像的mysql 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1727109449a1098067.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论