MacOS M1在CentOS8下安装Docker遇到的问题

文章目录

最近一直在使用MACOS的M1系列电脑开发,发现在Centos8虚拟机环境下安装docker的各种问题,在这里进行总结,以备后期使用和参考

一、先更新yum

java 复制代码
yum update

报错:

Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist

解决:

进入yum.repos.d目录下运行以下两条命令修改yum存储库镜像源。

java 复制代码
cd /etc/yum.repos.d/
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
 

此时可以运行yum update

二、安装yum工具

java 复制代码
yum install -y yum-utils device-mapper-persistent-data lvm2

三、设置yum镜像

分别以此执行下边命令

java 复制代码
yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
 
yum makecache

四、安装docker

java 复制代码
yum install -y docker-ce

如果报如下错误:

Problem: package docker-ce-3:24.0.7-1.el8.aarch64 requires containerd.io >= 1.6.4, but none of the providers can be installed

改用命令:

java 复制代码
 yum install -y --allowerasing docker-ce

五、安装完成,启动和查看版本

java 复制代码
systemctl start docker
docker -v

六、配置镜像

java 复制代码
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://你自己的.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

问题1:Docker deamon.json 文件修改之后重启不生效

因为不同的版本规则不一样,那就需要需要先停止服务,再启动,如下

java 复制代码
sudo systemctl daemon-reload
sudo systemctl stop docker.service
sudo systemctl stop docker.socket
sudo systemctl start docker.service
sudo systemctl start docker.socket

问题2:Docker拉取镜像失败?报connect: connection refused

docker pull hello-world报错

error pulling image configuration: download failed after attempts=6: dial tcp 104.244.46.63:443: connect: connection refused

第一反应是不是服务器网络问题导致的,然后ping一下百度试试通不通

java 复制代码
ping www.baidu.com

结果是通的。说明不是网络的问题。既然不是网络问题,那第二种可能就是镜像加速器地址失效了,现在很多加速器都不能使用了,下面是找了几个可以用的,后期可能也会被停掉服务吧。启用且珍惜

json 复制代码
{
  "registry-mirrors": ["https://cr.console.aliyun.com","https://docker.m.daocloud.io","https://public.ecr.aws","https://dockerhub.timeweb.cloud"]
}

然后使用问题1 的方式重启。重启后试试

java 复制代码
docker pull hello-world
相关推荐
JavaPub-rodert4 小时前
Docker 日志为什么能把磁盘写爆?讲透 json-file、local、journald、日志轮转与 docker logs
docker·eureka·json
人生匆匆5 小时前
docker部署ceph集群
ceph·docker·容器
张张123y8 小时前
后端第九课:部署上线(把你的 FastAPI 后端真正跑起来给别人用)
python·docker·部署·fastapi
闲云自留地11 小时前
CentOS 搬 Ubuntu 24.04:yum 变 apt、防火墙、SELinux、root 全差异避坑
linux·ubuntu·centos
AscendKing12 小时前
Docker Compose 一键部署 SkyWalking 10.2.0 + Elasticsearch8.11,分布式链路追踪完整实战
elasticsearch·docker·skywalking·链路追踪·微服务监控
励志师code12 小时前
Kubernetes 集群节点生命周期管理实战:从扩容、调度管控到证书续期
运维·docker·容器·kubernetes·gpu算力·kubelet
闲云自留地13 小时前
Kubernetes 安装保姆级:关 swap、装 containerd、init 集群、calico 一篇通
容器·贪心算法·kubernetes
木雷坞13 小时前
Docker Compose部署Metabase:应用库隔离与日期筛选看板
运维·docker·容器
怒放的生命199113 小时前
前端项目 Docker 打包实操指南
前端·docker·容器
tedcloud12313 小时前
Docker Compose 部署 Immich:手机照片自动备份与常见故障排查
运维·前端·docker·容器·智能手机·开源·流程图