
freenas/mariadb!mariadb
MariaDB是MySQL关系型数据库管理系统的社区开发分支,旨在遵循GNU GPL协议保持免费。作为领先开源软件系统的分支,其显著特点是由MySQL原开发团队领导——因Oracle收购MySQL引发担忧而创建此分支。贡献者需将版权共享给MariaDB基金会。该镜像致力于与MySQL保持高度兼容性,确保“即插即用”的替换能力,包括库二进制等效性以及与MySQL API和命令的完全匹配。
通过以下命令快速启动MariaDB容器:
bashdocker run --name some-mariadb \ -e MYSQL_ROOT_PASSWORD=my-secret-pw \ # 必须设置:root用户密码 -p 3306:3306 \ # 端口映射:主机端口:容器端口 -v mariadb_data:/var/lib/mysql \ # 数据卷挂载:持久化数据 -d mariadb:latest # 后台运行,使用最新镜像
创建docker-compose.yml文件进行编排部署:
yamlversion: '3.8' services: mariadb: image: mariadb:latest container_name: mariadb environment: MYSQL_ROOT_PASSWORD: my-secret-pw # root用户密码(必填) MYSQL_DATABASE: mydb # 自动创建的数据库名称 MYSQL_USER: myuser # 自动创建的普通用户 MYSQL_PASSWORD: mypass # 普通用户密码 ports: - "3306:3306" # 端口映射 volumes: - mariadb_data:/var/lib/mysql # 数据持久化卷 - ./init.sql:/docker-entrypoint-initdb.d/init.sql # 初始化SQL脚本 restart: unless-stopped # 除非手动停止,否则自动重启 volumes: mariadb_data: # 命名卷,确保数据持久化
| 环境变量 | 说明 | 是否必填 |
|---|---|---|
MYSQL_ROOT_PASSWORD | 设置root用户密码 | 是 |
MYSQL_DATABASE | 容器启动时自动创建的数据库名称 | 否 |
MYSQL_USER | 自动创建的数据库用户(非root) | 否 |
MYSQL_PASSWORD | MYSQL_USER对应的密码 | 否 |
MYSQL_ALLOW_EMPTY_PASSWORD | 允许root用户使用空密码(不推荐) | 否 |
MYSQL_RANDOM_ROOT_PASSWORD | 自动生成随机root密码并输出到日志 | 否 |
为避免容器删除导致数据丢失,需通过卷挂载持久化数据目录:
mariadb_data)-v /path/on/host:/var/lib/mysql完整配置与高级用法请参考官方Docker文档:
[***]

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务