众所周知,Docker 是一款容器平台,安装在 Docker 下的所有应用,都以镜像的形式存在,也就是说,我们无法在正常的 Linux 或 Unix 文件系统下去操作应用。那么,我们应该如何去管理安装在 Docker 下的应用(准确的说应该是镜像)呢?本篇文章以 MySQL 为例,记录下通过 Docker 操作 MyS ..

Dicker 下操作应用,设置 Mysql 的外网也可访问的权限。

众所周知,Docker 是一款容器平台,安装在 Docker 下的所有应用,都以镜像的形式存在,也就是说,我们无法在正常的 Linux 或 Unix 文件系统下去操作应用。那么,我们应该如何去管理安装在 Docker 下的应用(准确的说应该是镜像)呢?本篇文章以 MySQL 为例,记录下通过 Docker 操作 MySQL 数据库以实现外网访问权限。

1、docker ps指令
docker ps 指令可以查看当前运行状态下的应用运行情况。使用 Docker ps 命令获取 MySQL 的 ID。
image.png
通过 docker ps 指令获取到了 MySQL 的 ID 为 6154c5ef7864 。

2、docker exec 指令
我们可以通过 docker exec -it 应用ID或应用名 /bin/bash 的指令来进入应用镜像。
参数说明:

3、连接 MySQL
进入 MySQL 的镜像后,便可以直接通过
mysql -uroot -p 指令,根据提示输入密码后,进入 MySQL 交互界面

4、设置外网访问权限:
通过指令
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'liuxin' WITH GRANT OPTION;
来创建 用户名为 root 密码为 liuxin 可以从任意主机(@)连接到数据库。
运行结束后通过指令:flush privileges;来刷新数据库配置。

5、退出容器:
配置完成后可以接通过exit退出 MySQL 以及 Docker 容器

  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包括系统。

    256 引用 • 567 回帖 • 591 关注
  • 服务器

    服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。

    103 引用 • 505 回帖
  • MySQL

    MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是最流行的关系型数据库管理系统之一。

    468 引用 • 477 回帖 • 840 关注
回帖
请输入回帖内容...