Docker是一种轻量级、可移植的容器化平台,可以简化应用程序的部署和管理。在本文中,我们将探讨如何使用Docker来搭建和部署MySQL数据库,并将数据和配置文件挂载到外部目录,以实现数据持久化和方便的配置管理。

1: 安装Docker

首先,确保你的系统上已经安装了Docker。你可以根据官方文档安装适用于你系统的Docker版本

2、拉取mysql镜像

docker search mysql 查询镜像 可省略这一步

docker pull mysql 拉取镜像,不带版本默认拉取最新版本 指定版本如docker pull ubuntu/mysql

3、创建待挂载文件

4、创建MySQL容器

docker run --restart=always --privileged=true -p 3306:3306 --name mysql -v /usr/mysqldata/log:/var/log/mysql -v /usr/mysqldata/data:/var/lib/mysql -v /usr/mysqldata/conf:/etc/mysql -v /usr/mysqldata/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=20240110 -d mysql

命令解释

docker run: 运行Docker容器的命令。

--restart=always: 指定容器在退出时总是重新启动。这意味着,无论容器是正常退出还是异常退出,Docker将自动重新启动这个容器。

--privileged=true: 赋予容器特权,允许它在主机上执行一些敏感操作,这通常是出于一些特殊需求的考虑,但需要注意潜在的安全风险。

-p 3306:3306: 将主机的端口3306映射到容器的端口3306,这样外部系统可以通过主机的3306端口访问MySQL服务。

--name mysql: 为容器指定一个名称,这里是"mysql"。

-v /usr/mysqldata/log:/var/log/mysql: 将主机上的/usr/mysqldata/log目录映射到容器内的/var/log/mysql目录,用于存储MySQL的日志文件。

-v /usr/mysqldata/data:/var/lib/mysql: 将主机上的/usr/mysqldata/data目录映射到容器内的/var/lib/mysql目录,用于存储MySQL的数据文件。

-v /usr/mysqldata/conf:/etc/mysql: 将主机上的/usr/mysqldata/conf目录映射到容器内的/etc/mysql目录,用于存储MySQL的配置文件。

-v /usr/mysqldata/my.cnf:/etc/mysql/my.cnf: 将主机上的/usr/mysqldata/my.cnf文件映射到容器内的/etc/mysql/my.cnf文件,这是MySQL的配置文件。

-e MYSQL_ROOT_PASSWORD=20240110: 设置MySQL的root用户密码为"20240110"。

-d mysql: 以后台(detached)模式运行MySQL容器。

挂载外部目录的理由:

数据持久性和灵活性。容器中MySQL数据的易备份和恢复。

如当容器宕机或者不小心移除,可重新起一个容器并挂载之前的文件,之前的数据依然存在。

5、验证MySQL容器(查看容器情况)

docker ps -a

-a 选项表示显示所有容器,包括已经停止运行的容器。

这个命令会列出所有的Docker容器,包括正在运行的和已经停止的。对于每个容器,你将看到容器的ID、名称、创建时间、状态、端口映射等信息。

docker ps

这个命令默认只显示正在运行的容器。

类似于docker ps -a,但只列出正在运行的容器,而不包括已经停止的容器。

因为我是之前就搭建好的,这里可以看到status已经运行六个月了

然后就可以使用navicat进行连接啦 点击测试连接显示成功就可以在项目中使用了

docker拉镜像、创建容器、停止容器、移除容器、构建镜像 docker搭建rabbitmq docker部署showdoc详细步骤 在docker中搭建部署clickhouse docker搭建mongodb并挂载外部文件 docker搭建部署minio 存储文件

精彩内容

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。