温馨提示×

centos docker能否跑mysql

小樊
34
2026-09-24 01:57:07
栏目: 云计算

可以的,CentOS 上的 Docker 完全可以运行 MySQL,而且这是非常常见的使用方式。

下面给你一个清晰说明和实践示例。


一、为什么 CentOS + Docker 能跑 MySQL

  • Docker 本身是跨平台的(Linux 内核特性)
  • CentOS 是 Linux 系统,完全支持 Docker
  • MySQL 官方提供了 MySQL Docker 镜像
  • 不依赖宿主机是否安装 MySQL

✅ 结论:CentOS 7 / 8 / Stream + Docker = 可以稳定跑 MySQL


二、最简运行方式(示例)

1️⃣ 安装 Docker(如已安装可跳过)

yum install -y docker
systemctl start docker
systemctl enable docker

2️⃣ 拉取 MySQL 镜像

docker pull mysql:8.0

3️⃣ 启动 MySQL 容器

docker run -d \
  --name mysql \
  -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=123456 \
  mysql:8.0

访问:

mysql -h 127.0.0.1 -P 3306 -uroot -p

三、生产推荐方式(带数据持久化)

MySQL 数据必须持久化,否则容器删除数据就没了。

docker run -d \
  --name mysql \
  -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -v /data/mysql:/var/lib/mysql \
  mysql:8.0

✅ /data/mysql 是宿主机目录,保存数据库文件


四、常见注意点(很重要)

✅ 1. CentOS 防火墙

firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --reload

✅ 2. SELinux(有时会导致权限问题)

临时关闭测试:

setenforce 0

或给目录授权:

chcon -Rt svirt_sandbox_file_t /data/mysql

✅ 3. 内存不足

MySQL 8 至少需要 1G 内存,否则可能启动失败


五、适合的场景

✅ 开发测试
✅ 单机服务
✅ 微服务数据库
❌ 超大规模高并发(需集群)


六、如果你愿意

你可以告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • Docker 是否已安装
  • 是 开发用 还是 生产用

我可以给你一份完全适合你环境的 Docker MySQL 配置。

0 踩