【Docker】MySQL 源码构建 Docker 镜像(基于 ARM 64 架构)
发布网友
发布时间:2024-08-20 16:50
我来回答
共1个回答
热心网友
时间:2024-09-03 15:13
基于 ARM 64 架构,为避免MySQL版本变化带来的额外成本,本文将指导你如何从头构建MySQL 5.7.40的Docker镜像。首先,我们从官方镜像的Dockerfile入手,但官方仅提供MySQL 8.0以上版本的ARM64镜像,因此需要采取特殊步骤。
步骤一,使用dfimage获取MySQL 5.7.40的原始Dockerfile,注意其原文件中通过yum安装的逻辑不适用于ARM64,因为官方yum源缺少该版本的ARM64 rpm。所以,你需要:
在ARM环境中安装必要的依赖
下载源码并安装
修改源码配置以适应ARM架构
编译源码生成rpm文件,结果存放在/root/rpmbuild/RPMS/aarch64目录
构建镜像的Dockerfile、docker-entrypoint.sh脚本(解决Kylin V10兼容性问题,会在后续文章详细说明)以及my.cnf文件是构建过程中的关键组件。虽然原Dockerfile需要调整以消除EOF块的报错,但整个过程需要细心处理和定制化以适应ARM64平台。
【Docker】MySQL 源码构建 Docker 镜像(基于 ARM 64 架构)
步骤一,使用dfimage获取MySQL 5.7.40的原始Dockerfile,注意其原文件中通过yum安装的逻辑不适用于ARM64,因为官方yum源缺少该版本的ARM64 rpm。所以,你需要:在ARM环境中安装必要的依赖下载源码并安装修改源码配置以适应ARM架构编译源码生成rpm文件,结果存放在/root/rpmbuild/RPMS/aarch64目录构建镜像的...
ARM64 CPU架构下安装部署Docker + Rancher + K8S 说明文档
基于ARM64的部署流程环境准备:确认docker环境,挂载磁盘,配置docker根目录 安装Docker:下载并解压安装包,复制文件,创建containerd服务文件,启动docker 部署K8S:关闭SELinux和Swap分区,配置iptables,调整网络设置,管理yum源 安装kubelet, kubeadm, kubectl:设置开机启动,初始化集群Master 添加节点:在其他...
如何使用Docker构建多平台镜像?
首先,理解多平台构建原理,Docker借助BuildKit在"docker-container"驱动的Buildx实例中,为每个目标平台(如amd64和arm64)启动独立容器进行构建,生成的镜像和Manifest List在Buildx实例中存储。准备工作必不可少,确保Linux内核版本>=4.8,执行命令行`docker run --privileged --rm tonistiigi/binfmt --...
达梦数据库(DM8)arm64架构docker镜像,可在mac m1系列芯片上完美运行_百 ...
达梦数据库(DM8)的arm64架构Docker镜像现已支持Mac M1系列芯片,确保在该平台上稳定运行。针对官网DM8试用版(专为鲲鹏平台设计)的最新更新于2024-09-27发布,需要注意的是,先前版本授权已过期的用户如果遇到6001错误,只需更新镜像版本并拉取最新包,使用docker-compose启动数据库实例即可。数据库配置...
x86机器上构建arm架构的image
构建amd64架构镜像时,由于平台本身即为amd64架构,故可直接构建。若在amd64架构上直接构建arm架构镜像,需要确保Dockerfile中没有RUN指令,并且基础镜像为arm镜像。若存在RUN指令或需要执行arm架构的镜像,需要先执行multiarch/qemu-user-static镜像。值得注意的是,构建arm架构镜像时可能会遇到一些挑战,比如...
如何解决通过arm架构安装Ubuntu上的Docker时的错误?
在尝试通过ARM架构安装Ubuntu上的Docker时,遇到了"Failed to connect to download.docker.com port 443: Connection timed out"的错误。经过排查,问题往往出在网络连接上,可能是由于地址源的问题导致的超时连接。解决步骤如下:首先,确保你的系统包列表是最新的,通过运行`sudo apt-get update`来更新...
如何在arm服务器构建docker镜像?
在这个M服务器上装一个这个模拟器,还有这个编译器,然后来再这个就可以搭建起来。
docker精简入门(十)Docker Compose
在Linux上安装Docker Compose非常简单,可以直接从官方GitHub Release处下载编译好的二进制文件。对于x86_64架构的Linux,建议下载二进制包进行安装;如果计算机的架构是ARM(例如树莓派),则可以使用pip安装。Compose是一个Python应用,可以直接用容器来执行。查看下载的run.sh脚本内容,可以看到它实际上是下载...
cinder、glance容器镜像制作简介(二)
针对cinder和glance服务,分别构建镜像。例如,cinder镜像的构建命令是:`docker build . --build-arg PROJECT=cinder --build-arg PROJECT_REF=master --build-arg FROM=base:ctyunos --tag cinder:v1`对于跨平台需求,如arm架构,借助Docker Buildx插件。首先配置buildx,创建并激活arm64_builder容器...
ERROR: no matching manifest for linux/arm64/v8 in the manifest list...
Mac笔记本m1芯片,使用docker 创建mysql的时候容易出现这个错误,解决方法:添加 platform: linux/x86_64