京东云docker安装mysql?

在京东云上使用 Docker 安装 MySQL,可以分为以下几个步骤:


✅ 前提条件

  1. 已拥有京东云账号 并登录 京东云控制台。
  2. 已创建一台 云服务器(CVM),操作系统建议选择 CentOS、Ubuntu 等主流 Linux 发行版。
  3. 云服务器安全组已开放所需端口(如 MySQL 默认端口 3306)。
  4. SSH 工具连接到你的云服务器。

? 步骤一:安装 Docker

以 CentOS 为例:

# 1. 更新系统包
sudo yum update -y

# 2. 安装必要的依赖
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# 3. 添加 Docker 官方源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 4. 安装 Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io

# 5. 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker

# 6. 验证安装
docker --version

Ubuntu 用户可参考官方文档或使用 apt 安装。


? 步骤二:拉取并运行 MySQL 镜像

# 拉取 MySQL 8.0 镜像(推荐)
docker pull mysql:8.0

# 或者拉取 MySQL 5.7
# docker pull mysql:5.7

运行 MySQL 容器

docker run -d 
  --name mysql-container 
  -p 3306:3306 
  -e MYSQL_ROOT_PASSWORD=YourStrongPassword123 
  -v /mydata/mysql/data:/var/lib/mysql 
  -v /mydata/mysql/conf:/etc/mysql/conf.d 
  --restart=unless-stopped 
  mysql:8.0

参数说明:

参数 说明
-d 后台运行容器
--name mysql-container 容器名称
-p 3306:3306 映射宿主机 3306 端口到容器
-e MYSQL_ROOT_PASSWORD=... 设置 root 用户密码(必填)
-v /mydata/... 数据和配置文件挂载,实现数据持久化
--restart=unless-stopped 开机自启容器

⚠️ 注意:请将 YourStrongPassword123 替换为强密码。


? 步骤三:配置 MySQL(可选)

如果需要自定义配置(如字符集、远程访问等),可在挂载的配置目录中创建 .cnf 文件:

# 创建配置目录
mkdir -p /mydata/mysql/conf

# 编辑配置文件
echo "
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
skip-name-resolve
" > /mydata/mysql/conf/mysql.cnf

然后重启容器:

docker restart mysql-container

? 步骤四:允许远程访问(重要)

默认情况下,MySQL 只允许本地连接。若需从外部连接:

  1. 确保京东云安全组放行 3306 端口

    • 登录京东云控制台 → 云服务器 → 安全组 → 添加规则:
      • 协议:TCP
      • 端口:3306
      • 源 IP:0.0.0.0/0(或限制为特定 IP)
  2. 进入容器修改权限

# 进入容器
docker exec -it mysql-container mysql -u root -p

# 输入密码后执行:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'YourStrongPassword123';
FLUSH PRIVILEGES;

如果未开启 % 访问,可能还需要创建用户并授权:

CREATE USER 'admin'@'%' IDENTIFIED BY 'YourPassword';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%';
FLUSH PRIVILEGES;

✅ 测试连接

你可以使用以下方式测试:

  • 使用 Navicat、DBeaver 等客户端工具远程连接。
  • 使用命令行从另一台机器连接:
    mysql -h <你的京东云公网IP> -P 3306 -u root -p

? 其他建议

  • 定期备份数据:可通过 mysqldump 或卷备份 /mydata/mysql/data
  • 使用 Docker Compose 更方便管理(可选):
# docker-compose.yml
version: '3.8'
services:
  mysql:
    image: mysql:8.0
    container_name: mysql-container
    environment:
      MYSQL_ROOT_PASSWORD: YourStrongPassword123
    ports:
      - "3306:3306"
    volumes:
      - /mydata/mysql/data:/var/lib/mysql
      - /mydata/mysql/conf:/etc/mysql/conf.d
    restart: unless-stopped

运行:

docker-compose up -d

❓常见问题

问题 解决方法
连接被拒 检查安全组、防火墙、MySQL 用户权限
容器启动失败 查看日志 docker logs mysql-container
中文乱码 确保配置文件设置了 utf8mb4

✅ 总结:
你已在京东云 CVM 上通过 Docker 成功部署了 MySQL,并支持远程访问与数据持久化。

如有更多需求(如主从复制、SSL 配置等),可进一步扩展。

需要我帮你写一个完整的脚本一键部署吗?

未经允许不得转载:CCLOUD博客 » 京东云docker安装mysql?