【Docker】docker安装


需要云服务器等云产品来学习Linux可以移步/-->腾讯云<--/官网,轻量型云服务器低至112元/年,新用户首次下单享超低折扣。


目录

一、Ubuntu安装docker

1、查看操作系统和CPU架构

2、卸载docker

3、配置docker下载源

4、安装docker

5、解决报错

6、自启动配置

7、更换docker镜像源

8、docker目录修改

二、CentOS安装docker

1、查看操作系统和CPU架构

2、卸载docker

3、配置仓库

4、配置使用国内源

5、安装docker

6、自启动docker

7、修改镜像源,更换docker目录

三、问题解决


用于解决嵌入式Linux镜像、环境问题。

一、Ubuntu安装docker

1、查看操作系统和CPU架构

2、卸载docker

先输入docker看看有没有这个命令。有的话可以先卸载。

bash 复制代码
sudo apt-get remove docker docker-engine docker.io containerd runc
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras -y
#删除docker的缓存目录
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
sudo rm -rf /data/var/lib/docker
sudo rm -rf /etc/docker/daemon.json

3、配置docker下载源

bash 复制代码
#curl 命令安装
sudo apt install curl -y
#创建 gpg key 目录
sudo mkdir -m 0755 -p /etc/apt/keyrings
#下载 gpg key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg
echo \
 "deb [arch=$(dpkg --print-architecture) signedby=/etc/apt/keyrings/docker.gpg] 
https://download.docker.com/linux/ubuntu \
 $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4、安装docker

bash 复制代码
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

5、解决报错

bash 复制代码
#journalctl 是操作系统日志查看命令
#-e 表示从末尾看
#-u 表示看哪个系统组件的,我们的组件是 docker
journalctl -eu docker

修复报错如下6:

6、自启动配置

bash 复制代码
#重新加载配置
sudo systemctl daemon-reload 
#启动服务
sudo systemctl start docker 
#开机启动
sudo systemctl enable docker
#查看服务状态
sudo systemctl status docker
#查看docker版本
sudo docker version

7、更换docker镜像源

bash 复制代码
sudo mkdir /etc/docker
sudo cd /etc/docker
sudo vim daemon.json
#在该json中新增
{
   "registry-mirrors": [
   "https://mirror.ccs.tencentyun.com"
  ]
}
#重新加载配置
sudo systemctl daemon-reload 
#重启docker服务
sudo systemctl restart docker

8、docker目录修改

Docker 默认的安装目录为/var/lib/docker,这里面会存放很多很多镜像,所以在安装的时候需要考虑这个目录的空间

(1)将/var/lib/docker 挂载到一个大的磁盘,这种一般我们能控制挂载目录,像腾讯云这种云厂商在安装 K8s 的节点的时候提供了挂载选项,可以直接挂载这个目录过去

(2)安装之前挂载一个大的磁盘,然后创建一个软链接到/var/lib/docker,这样就自动安装到我们空间比较大的磁盘了

(3)安装了 docker,然后发现忘了配置这个目录,我们需要修改 docker 的配置文件

bash 复制代码
#假定大磁盘目录为 /data
mkdir -p /data/var/lib/docker 
# 编辑配置文件
vi /etc/docker/daemon.json
# 输入下面的 json
{
"data-root": "/data/var/lib/docker"
}
# 加载配置
sudo systemctl daemon-reload 
# 重启 docker
sudo systemctl restart docker 
#查看 docker 状态
sudo systemctl status docker

二、CentOS安装docker

1、查看操作系统和CPU架构

2、卸载docker

bash 复制代码
sudo yum remove docker \
 docker-client \
 docker-client-latest \
 docker-common \
 docker-latest \
 docker-latest-logrotate \
 docker-logrotate \
 docker-engine
#删除机器上的包
sudo yum remove docker-ce docker-ce-cli containerd.io dockerbuildx-plugin docker-compose-plugin docker-ce-rootless-extras
#执行卸载
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
#根据实际情况设置
sudo rm -rf /data/var/lib/docker
sudo rm -rf /etc/docker/daemon.json

3、配置仓库

bash 复制代码
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4、配置使用国内源

bash 复制代码
sudo sed -i 's@//download.docker.com@//mirrors.ustc.edu.cn/docker-ce@g' /etc/yum.repos.d/docker-ce.repo

5、安装docker

bash 复制代码
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

6、自启动docker

bash 复制代码
#配置加载
sudo systemctl daemon-reload 
#启动服务
sudo systemctl start docker 
#开机启动
sudo systemctl enable docker
#查看服务状态
sudo systemctl status docker
# 查看docker版本
docker -v
#使用docker运行hello-world
sudo docker run hello-world

7、修改镜像源,更换docker目录

见Ubuntu7、8节

三、问题解决

遇到docker pull拉取镜像不稳定的情况(第一天可以正常拉取,隔日拉取超时的情况)后来发现是镜像源不稳定,更换腾讯云镜像后docker pull正常

轻量应用服务器 安装 Docker 并配置镜像加速源-最佳实践-文档中心-腾讯云 (tencent.com)

相关推荐
x***13399 分钟前
使用Docker快速搭建Redis主从复制
redis·docker·容器
czc1311 小时前
4K QPS 博客社区:CCBlog 全栈开源,Springboot项目实战,Docker一键部署
spring boot·redis·docker·开源·vue·rabbitmq
sanduo1121 小时前
docker 构建编排过程中常见问题
运维·docker·容器
小坏讲微服务2 小时前
Spring Boot 4.0 与 Spring Cloud Alibaba 2025 整合完整指南
java·spring boot·分布式·后端·spring cloud·微服务·架构
小时候的阳光3 小时前
使用Docker版Percona Xtrabackup备份恢复MySQL8.0.x
mysql·docker·备份·xtrabackup
K***65893 小时前
冯诺依曼架构和哈佛架构的主要区别?
微服务·云原生·架构
eddy-原3 小时前
Docker与DevOps实战训练:从容器管理到全链路项目部署
docker·容器·devops
神秘的土鸡3 小时前
Linux中使用Docker构建Nginx容器完整教程
linux·nginx·docker
人工智能训练6 小时前
Windows系统Docker中Xinference 集群无法启动的解决方法
linux·运维·服务器·windows·docker·容器·xinference
Full Stack Developme6 小时前
Linux YUM、Docker 和源码编译
linux·运维·docker