mac m1上安装centos8时遇到的docker 镜像问题 - 系统架构和docker镜像的关系

本文探讨了在Mac M1架构上使用docker-compose遇到的问题,发现系统会自动选择相应架构的镜像。作者揭示了在Mac上通过VMware运行CentOS 8的虚拟机中,镜像仍为arm64架构,引发关于docker原理和虚拟机运行机制的思考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这几天尝试使用docker-compose编排ruoyi-cloud开源项目,结果因为自己最近才使用mac os系统,没意识到系统架构之间所带来的问题。

首先我们使用arch命令来看自己系统的架构:
在这里插入图片描述
可以看到mac m1目前是arm64架构。

我们回到docker的镜像上来。因为mac本身其实就装了docker,但是用mac本身去pull镜像,我们通过docker inspect images-id 可以看到mac下images的架构:
在这里插入图片描述
可以看到,在mac m1下拉取的docker镜像的架构师arm64

这里我们要清楚一个问题,就是当前系统上安装了docker后拉取镜像的时候,会根据自身架构自动取寻找合适的镜像!!! 只有找不到的时候才会报错

所以说,其实我们根本就不用去关心不同架构对docker镜像所带来的影响!!!

那么问题怎么来的呢?

我呢在mac上安装了vmware,装了centos8的虚拟机。

我们首先来看mac虚拟机上centos8的架构:
在这里插入图片描述
是一个我不知道的aarch64架构。

我们在该虚拟机上再垃取一个docker镜像,然后来看看镜像架构:
在这里插入图片描述
什么???

居然还是arm64架构,这不就是mac的架构吗???

所以我们是不是该思考,docker的原理是什么呢???虚拟机的原理又是什么呢???

运行在mac os上的vmware中centos8又是什么呢????


以后想明白再来看。。。

### 安装Docker并运行CentOS 8容器 对于Apple M1 Mac上的操作环境,由于其ARM架构特性,在安装配置Docker来运行CentOS 8容器需要注意特定事项。 #### 配置Docker Desktop 为了使Docker能够在M1 Mac上正常工作,需先下载适合苹果Silicon平台版本的[Docker Desktop](https://www.docker.com/products/docker-desktop)[^1]。完成安装后启动应用,并确保启用了实验性功能Experimental Features以便更好地支持多架构镜像处理。 #### 创建CentOS 8容器 考虑到官方CentOS仓库可能缺乏针对ARM64优化的良好支持,建议采用兼容方式指定平台参数创建容器: ```bash docker pull quay.io/centos/centos:stream8 docker run -it --name my_centos8 --platform=linux/amd64 quay.io/centos/centos:stream8 /bin/bash ``` 上述命令首先从Quay.io获取了一个经过社区维护且更稳定的CentOS Stream 8镜像;接着指定了`--platform=linux/amd64`选项强制模拟x86_64架构执行环境,从而绕过因CPU指令集差异带来的潜在问题[^2]。 #### SSH服务设置 为了让外部设备能够访问到这个新建立起来的Linux实例,还需要进一步开启SSH服务器端口映射以及内部服务激活: ```bash yum update -y && yum install openssh-server -y service sshd start echo 'root:mypassword' | chpasswd sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config service sshd restart exit ``` 最后一步退出当前shell会话之后,可以利用如下形式重新连接至已具备远程登录能力的新建系统: ```bash docker start my_centos8 docker exec -it my_centos8 bash ``` 或者直接通过标准SSH客户端工具尝试连入(假设主机开放了相应防火墙规则允许TCP流量进入默认22号端口)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值