【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)

相关推荐
木卫二号Coding27 分钟前
宝塔-firefox(Docker应用)-构建自己的Web浏览器
linux·docker·开源
玄德公笔记1 小时前
docker-compose搭建sfpt服务器
服务器·docker·容器·sftp·docker-compose
LYX36931 小时前
Docker 安装mysql ,redis,nacos
redis·mysql·docker
小钟不想敲代码3 小时前
Docker部署Sentinel
docker·容器·sentinel
蓝天星空3 小时前
spring cloud gateway 3
java·spring cloud
胖毁青春,瘦解百病4 小时前
Docker镜像源设置不生效问题排查
docker·容器
木与子不厌5 小时前
微服务自定义过滤器
运维·数据库·微服务
微扬嘴角5 小时前
springcloud篇1(微服务技术栈、服务拆分与远程调用、Eureka、Nacos)
spring cloud·微服务·eureka
time_silence5 小时前
微服务——技术选型与框架
微服务·架构
dbcat官方5 小时前
1.微服务灰度发布(方案设计)
java·数据库·分布式·微服务·中间件·架构