在 Ubuntu 下通过 Docker 部署 MySQL 服务器

引言

Docker 是一个开源的容器化平台,能够让开发者将应用程序及其依赖打包成一个轻量级的、可移植的容器。它提供了对软件环境的一致性,极大地简化了应用的开发、测试和部署过程。MySQL 是一个流行的开源关系型数据库管理系统,支持 SQL 语言,广泛应用于各种项目中。将 MySQL 部署在 Docker 容器中,不仅可以简化安装流程,还能方便地进行版本管理与迁移。接下来,我们将详细介绍如何在 Ubuntu 系统下通过 Docker 部署 MySQL 服务器。

部署步骤

1. 安装 Docker

首先,确保你的系统上安装了 Docker。可以通过以下命令安装 Docker:

复制代码
sudo apt update
sudo apt install docker.io

安装完成后,启动 Docker 服务并设置为开机自启:

复制代码
sudo systemctl start docker
sudo systemctl enable docker

2. 拉取 MySQL 镜像

接下来,我们需要从 Docker Hub 拉取 MySQL 镜像。这里我们使用官方的 MySQL 镜像:

复制代码
sudo docker pull mysql:latest

3. 创建 MySQL 容器

现在,我们可以创建一个 MySQL 容器了。以下命令创建一个名为 my_mysql 的 MySQL 容器,并设置根密码为 your_password(请根据需要更改密码):

复制代码
sudo docker run --name my_mysql -e MYSQL_ROOT_PASSWORD=your_password -d mysql:latest
  • --name my_mysql:指定容器的名称
  • -e MYSQL_ROOT_PASSWORD=your_password:设置 MySQL 的 root 用户密码
  • -d:让容器在后台运行

4. 访问 MySQL 容器

可以通过以下命令进入 MySQL 容器并访问 MySQL 数据库:

复制代码
sudo docker exec -it my_mysql mysql -u root -p

系统会提示你输入密码,输入你在创建容器时设置的密码即可。

5. 数据持久化

为了确保数据不会在容器停止时丢失,我们需要配置数据卷。可以使用以下命令创建一个名为 mysql_data 的数据卷,并将其挂载到 MySQL 容器中:

复制代码
sudo docker run --name my_mysql -e MYSQL_ROOT_PASSWORD=your_password -v mysql_data:/var/lib/mysql -d mysql:latest

这样,即使容器被删除,数据也会保存在 mysql_data 卷中。

6. 常用参数说明

  • MYSQL_ROOT_PASSWORD:设置 MySQL root 用户的密码。
  • -v:用于挂载卷,确保数据持久化。

总结

通过以上步骤,我们成功在 Ubuntu 系统下通过 Docker 部署了 MySQL 服务器。无论是开发环境还是生产环境,这种方式都能让你快速上手并管理你的数据库。Docker 的灵活性和 MySQL 的强大功能结合在一起,让开发者的工作变得更加高效和便捷。快来试试吧!

相关推荐
IT大白鼠6 小时前
Docker 实战 ELKF 日志监控:容器日志全栈收集分析方案
运维·docker·容器
Julien200415 小时前
调查和解决 SELinux 问题
linux·运维·服务器·网络·学习方法
2601_9620746817 小时前
自己编译RustDesk,并将自建ID服务器和key信息写入客户端
运维·服务器
小张同学a.18 小时前
Docker 容器实战 1—— docker 基础与镜像构建
linux·运维·docker·容器
大模型丫丫18 小时前
Hermes Agent:轻量级智能体框架实战指南
大数据·运维·服务器
NJCloud19 小时前
Docker 容器技术入门:部署、核心概念与基础命令
运维·docker·容器
mooooooooooye19 小时前
2026 年跨平台 SSH 客户端怎么选?Xterminal、Termius、MobaXterm 谁更合适
服务器·网络·ssh
2601_9620723319 小时前
docker自建rustdesk-server远程桌面
运维·docker·容器
Blockchina19 小时前
Codex 实战:从一句需求到可验收的 Linux 主机巡检脚本
运维·服务器·网络
Best-Wishes20 小时前
BurpSuite Pro教育版在linux系统中配置
linux·运维·服务器·网络安全·burpsuite