docker搭建部署mysql并挂载指定目录

这篇具有很好参考价值的文章主要介绍了docker搭建部署mysql并挂载指定目录。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

1: 安装Docker

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

2、拉取mysql镜像

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

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

docker搭建部署mysql并挂载指定目录,docker,docker,mysql,容器

3、创建待挂载文件

docker搭建部署mysql并挂载指定目录,docker,docker,mysql,容器

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,但只列出正在运行的容器,而不包括已经停止的容器。

docker搭建部署mysql并挂载指定目录,docker,docker,mysql,容器
因为我是之前就搭建好的,这里可以看到status已经运行六个月了

然后就可以使用navicat进行连接啦
docker搭建部署mysql并挂载指定目录,docker,docker,mysql,容器
点击测试连接显示成功就可以在项目中使用了

docker拉镜像、创建容器、停止容器、移除容器、构建镜像
docker搭建rabbitmq
docker部署showdoc详细步骤
在docker中搭建部署clickhouse
docker搭建mongodb并挂载外部文件
docker搭建部署minio 存储文件文章来源地址https://www.toymoban.com/news/detail-796875.html

到了这里,关于docker搭建部署mysql并挂载指定目录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Docker】在容器中管理数据&&数据卷挂载以及宿主机目录挂载

                                      🎉🎉欢迎来到我的CSDN主页!🎉🎉                         🏅我是平顶山大师,一个在CSDN分享笔记的博主。📚📚         🌟推荐给大家我的博客专栏《【Docker】在容器中管理数据》。🎯🎯                         🎁

    2024年01月16日
    浏览(37)
  • 【Docker】Docker挂载和修改容器中的目录及配置文件的若干种方式

    我们知道,Docker相当于提供了一个 独立于宿主机的运行环境。当我们使用Docker部署了中间件例如nginx的容器后,一般都是需要修改配置文件的。那么我们想到的第一个方法就是进入容器去修改[1]。 1.进入容器内修改 首先我们需要有一个已经启动的容器。pull image后通过run-d -

    2024年02月08日
    浏览(31)
  • 当docker中容器运行时,如何将目录和宿主机进行挂载

    容器已运行,但还想挂载文件 容器已经运行起来了,突然想给容器的目录进行挂载,通常是在运行容器时加上 -v  命令 进行挂载。运行起来的容器想挂载文件夹可以通过修改容器在宿主机的配置文件进行解决。 在配置文件中加入新的挂载 1.查看容器存放目录 2.进入该目录

    2024年01月25日
    浏览(39)
  • Docker进阶数据卷&目录挂载及在线部署

    为了很好的实现数据保存和数据共享, Docker 提出了 Volume 这个概念,简单的说就是绕过默认的联合 文件系统,而以正常的文件或者目录的形式存在于宿主机上。又被称作 数据卷 Docker 中的数据卷(Volume)是用于持久化存储容器数据的一种机制。它可以将主机上的目录或文件

    2024年01月23日
    浏览(29)
  • Docker 将jar包 打包成容器,并挂载jar包和指定yml配置

    1.在 Dockerfile 中指定基础镜像,如 openjdk:8-jdk-alpine。 2.在 Dockerfile 中创建一个工作目录,如 /app。 3.将 jar 包复制到工作目录中,可以使用 COPY 指令。 4.将 yml 配置文件复制到工作目录中,也可以使用 COPY 指令。 5.暴露 jar 包使用的端口,可以使用 EXPOSE 指令。 6.在 Dockerfile 中指

    2024年02月05日
    浏览(40)
  • docker搭建nginx并且挂载宿主机目录

    1、安装docker,这里就不赘述了 2、查看nginx版本 3、设置nginx对外的挂载目录 4、拷贝一份nginx.conf文件到/root/docker/nginx/conf/目录下 5、拉取相应的docker镜像 6、搭建nginx服务器 7、搭建完成之后查看容器的运行状态 8、至此,nginx就搭建完成了!!

    2024年02月11日
    浏览(31)
  • docker 安装 mysql 并挂载 配置文件和数据目录

    1、宿主机创建挂载目录 2、搜索镜像 拉取官方支持版本(OFFICIAL 为 ok的版本) 3、以 mysql 作为基础镜像构建容器并挂载目录 your_password 为 mysql root 用户的密码 4、进入容器 执行上面命令后会要求输入密码,密码为 第三步的 your_password 5、退出容器

    2024年02月06日
    浏览(34)
  • yapi容器化docker部署以及mongodb容器的持久化挂载异常问题

    通过docker形式部署yapi,需要准备一个mongodb,然后直接在一个空文件夹里写好Dockerfile,其中通过wget下载yapi的zip包。 基本按照这篇文章:https://www.modb.pro/db/149666 来处理即可 把mongodb的docker 跑起来, --auth 表示需要密码才能访问 注意 原文中启动mongo的容器是这样的 首先创建Mon

    2024年02月14日
    浏览(39)
  • Docker数据管理之三种方式- 数据卷(Volumes)- 挂载主机目录(Bind mounts)- 数据卷容器(Data Volume Containers)

    文章主人公:帅哥BUG😎 文章路人: 路人  🤨   路人  😛 😎: docker在容器中管理数据主要有三种方式哦~ 🤨:  啊!,我记得docker在容器中管理数据主要方式是这两种吧  - 数据卷(Volumes) - 挂载主机目录(Bind mounts)      😛:  额,主要的方式是这两种?我怎么记得是这

    2024年02月05日
    浏览(58)
  • Linux挂载磁盘到指定目录

    某天突然发现文件夹下的东西都没有了! 使用命令 lsblk 查看,发现果然磁盘 sda 掉了,没有挂载点。(Linux lsblk 命令用法详解-Linux命令大全(手册)) 最后一列的mount points就表示挂载点。 随即搜索怎么挂载!——【Linux】磁盘分区和挂载 很幸运挂载磁盘其实很简单,只需要一

    2024年02月14日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包