原版是英文的,我们翻译一段主要部分如下。
为什么使用Bitnami Images?
Bitnami 密切跟踪上游源更改,并使用我们的自动化系统及时发布此映像的新版本。
使用Bitnami映像,可以尽快提供最新的错误修复和功能。
Bitnami 容器、虚拟机和云映像使用相同的组件和配置方法 - 根据您的项目需求轻松切换格式。
我们所有的镜像都基于 minideb 一个极简主义的基于 Debian 的容器镜像,它为您提供了一个小型的基本容器镜像和对领先 Linux 发行版的熟悉程度。
Docker Hub 中提供的所有 Bitnami 映像都使用 Docker Content Trust (DCT) 进行签名。您可以使用 来验证映像的完整性。DOCKER_CONTENT_TRUST=1
Bitnami 容器映像会定期发布,并提供最新的分发包。
想要在生产中使用 MySQL?试用 VMware Application Catalog,这是 Bitnami Application Catalog 的企业版。
如何在 Kubernetes 中部署 MySQL?
将 Bitnami 应用程序部署为 Helm Charts 是在 Kubernetes 上开始使用我们的应用程序的最简单方法。在Bitnami MySQL Chart GitHub存储库中阅读有关安装的更多信息。
Bitnami 容器可以与 Kubeapps 一起使用,用于在集群中部署和管理 Helm 图表。
bitnami支持主从自动匹配,非常方便,这里给出一个主从配置的docker-compose文件配置,欢迎大家参考使用。
docker-compose.yml
version: '3.8'
services:
mysql-master:
image: bitnami/mysql
container_name: mysql-master
restart: always
ports:
- '3306:3306'
volumes:
# 初始化数据库,只能在master节点,不需要可以删除
- ./init.sql:/docker-entrypoint-initdb.d/init.sql
# node1的数据卷映射
- ./node1:/bitnami/mysql/data
environment:
- BITNAMI_DEBUG=true
# 时区
- TZ=Asia/Shanghai
# 默认编码集
- MYSQL_CHARACTER_SET=utf8mb4
- MYSQL_COLLATE=utf8mb4_general_ci
# Root密码
- MYSQL_ROOT_PASSWORD=123456
# 主从复制用户
- MYSQL_REPLICATION_USER=repl-user
# 主从复制密码
- MYSQL_REPLICATION_PASSWORD=123456
# 主从复制角色
- MYSQL_REPLICATION_MODE=master
mysql-slave:
image: bitnami/mysql
container_name: mysql-slave
restart: always
volumes:
- ./node2:/bitnami/mysql/data
ports:
- '3307:3306'
depends_on:
# 分开部署可以去除该项
- mysql-master
environment:
- BITNAMI_DEBUG=true
# 时区
- TZ=Asia/Shanghai
# 默认编码集
- MYSQL_CHARACTER_SET=utf8mb4
- MYSQL_COLLATE=utf8mb4_general_ci
# ROOT用户
- MYSQL_ROOT_USER=root
# Root密码
- MYSQL_ROOT_PASSWORD=123456
# 主从复制用户
- MYSQL_REPLICATION_USER=repl-user
# 主从复制密码
- MYSQL_REPLICATION_PASSWORD=123456
# 主从复制角色
- MYSQL_REPLICATION_MODE=slave
# 主节点IP地址
- MYSQL_MASTER_HOST=192.168.0.135
# 主节点IP端口
- MYSQL_MASTER_PORT_NUMBER=3306
# 主节点ROOT用户
- MYSQL_MASTER_ROOT_USER=root
# 主节点ROOT密码
- MYSQL_MASTER_ROOT_PASSWORD=123456