Docker安装教程

Docker安装教程

  • 安装教程
    • Centos7.6
      • docker镜像源修改
      • docker目录修改
    • Ubuntu20.04
      • docker镜像源修改
      • docker数据目录修改

安装教程

Centos7.6

🚀docker支持的Cetnos操作系统版本

CentOS 7
CentOS 8 (stream)
CentOS 9 (stream)

🚀支持的CPU

ARM/X86_64

  1. 查看本机的操作系统
cat /etc/*release*

在这里插入图片描述
2.查看CPU架构

uname -a

在这里插入图片描述
3.卸载旧版本的docker(如果没有安装过docker的请跳过3,4两步)

sudo yum remove docker \ 
                  docker-client \ 
                  docker-client-latest \ 
                  docker-common \ 
                  docker-latest \ 
                  docker-latest-logrotate \ 
                  docker-logrotate \ 
                  docker-engine

4.卸载历史版本

#删除机器上的包
sudo yum remove docker-ce docker-ce-cli containerd.io docker-
buildx-plugin docker-compose-plugin docker-ce-rootless-extras 

# 执行卸载
sudo rm -rf /var/lib/docker 
sudo rm -rf /var/lib/containerd 
# 如果修改过docker的目录,请确认要删除的目录
  1. 配置yum源
#安装yum的utils工具
sudo yum install -y yum-utils
#添加docker的yum源
sudo yum-config-manager   --add-repo https://download.docker.com/linux/centos/docker-ce.repo 
#配置使用国内源
sed -i 's@//download.docker.com@//mirrors.ustc.edu.cn/docker-ce@g' /etc/yum.repos.d/docker-ce.repo 

在这里插入图片描述
在这里插入图片描述
6. 安装docker

sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin 

7.启动docker

#配置加载
sudo systemctl daemon-reload
#启动服务
sudo systemctl start docker
#开机启动
sudo systemctl enable docker
#查看服务状态 
sudo systemctl status docker

在这里插入图片描述
8. 检查安装结果,查看版本

docker version

docker info   #信息更详细

在这里插入图片描述
在这里插入图片描述
9. 执行hello-world可以看到hello from docker 表明docker服务正常

docker run hello-world

在这里插入图片描述

docker镜像源修改

在配置文件 /etc/docker/daemon.json中加入以下内容:

#JSON 
{ 
  "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"] 
} 

重启docker服务

systemctl daemon-reload
systemctl restart docker

在这里插入图片描述

docker目录修改

🚀docker默认安装的目录为 /var/lib/docker,随着docker的使用这里会存放大量的镜像源,可能会撑爆我们的磁盘,通常有以下三种解决方案:

  • 将/var/lib/docker挂载到一个大的磁盘,这种一般我们能控制挂载目录,像腾讯云这种云厂商在安装K8s的节点的时候提供了挂载选项,可以直接挂载这个目录过去 。
  • 安装之前挂载一个大的磁盘,然后创建一个软链接到/var/lib/docker,这样就自
    动安装到我们空间比较大的磁盘了。
  • 安装了docker,然后发现忘了配置这个目录,我们需要修改docker的配置文件 。
# 创建一个目录 /data 假设这个目录挂载到了一个很大的磁盘上
# 在 /data目录下创建docker的目录

mkdir -p /data/var/lib/docker

# 修改配置文件 /etc/docker/daemon.json 
# 输入下面的json 
{ 
"data-root": "/data/var/lib/docker" 
} 

在这里插入图片描述
🚀重启docker服务

sudo systemctl daemon-reload
sudo systemctl restart docker

🚀这是原本在/var/lib/docker目录下的所有内容,都已经被移动到新建的 /data/var/lib/docker/ 目录下了。

在这里插入图片描述

Ubuntu20.04

🚀docker支持的Ubuntu操作系统版本

Ubuntu Kinetic 22.10
Ubuntu Jammy 22.04 (LTS)
Ubuntu Focal 20.04 (LTS)
Ubuntu Bionic 18.04 (LTS)

🚀支持的CPU

ARM/X86_64

  1. 查看本机的操作系统
cat /etc/*release*

在这里插入图片描述

2.查看CPU架构

uname -a

在这里插入图片描述
3.卸载旧版本的docker(如果没有安装过docker的请跳过3,4两步)

sudo apt-get remove docker docker-engine docker.io containerd runc 

4.卸载历史版本的docker

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

# 如果修改过目录路径此处要注意

5.配置docker下载源

#Shell 
#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) signed-by=/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 

6.安装docker

#Shell 
sudo apt-get update 
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-
buildx-plugin docker-compose-plugin -y 

7.启动docker

#Shell 
#配置加载 
sudo systemctl daemon-reload  
#启动服务 
sudo systemctl start docker  
#开启启动 
sudo systemctl enable docker 
#查看服务状态 
sudo systemctl status docker  

8.查看安装结果,查看版本信息

docker version

docker info   #信息更详细

9 执行hello-world可以看到hello from docker 表明docker服务正常

在这里插入图片描述

docker镜像源修改

在配置文件 /etc/docker/daemon.json中加入以下内容:

#JSON 
{ 
  "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"] 
} 

重启docker服务

systemctl daemon-reload
systemctl restart docker

docker数据目录修改

# 创建一个目录 /data 假设这个目录挂载到了一个很大的磁盘上
# 在 /data目录下创建docker的目录

mkdir -p /data/var/lib/docker

# 修改配置文件 /etc/docker/daemon.json 
# 输入下面的json 
{ 
"data-root": "/data/var/lib/docker" 
} 

在这里插入图片描述
🚀重启docker服务

sudo systemctl daemon-reload
sudo systemctl restart docker

🚀这是原本在/var/lib/docker目录下的所有内容,都已经被移动到新建的 /data/var/lib/docker/ 目录下了。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/118744.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Gin学习笔记

Gin学习笔记 Gin文档:https://pkg.go.dev/github.com/gin-gonic/gin 1、快速入门 1.1、安装Gin go get -u github.com/gin-gonic/gin1.2、main.go package mainimport ("github.com/gin-gonic/gin""net/http" )func main() {// 创建路由引…

.NET Framework中自带的泛型委托Action

Action<>是.NET Framework中自带的泛型委托&#xff0c;可以接收一个或多个输入参数&#xff0c;但不返回任何参数&#xff0c;可传递至多16种不同类型的参数类型。在Linq的一些方法上使用的比较多。 1、Action泛型委托 .NET Framework为我们提供了多达16个参数的Action…

【网络安全 --- web服务器解析漏洞】IIS,Apache,Nginx中间件常见解析漏洞

一&#xff0c;工具及环境准备 以下都是超详细保姆级安装教程&#xff0c;缺什么安装什么即可&#xff08;提供镜像工具资源&#xff09; 1-1 VMware 16.0 安装 【网络安全 --- 工具安装】VMware 16.0 详细安装过程&#xff08;提供资源&#xff09;-CSDN博客文章浏览阅读20…

【Linux】第十二站:进程

文章目录 1.windows和linux中的进程2.先描述3.在组织4.具体的Linux系统是如何做的&#xff1f;1.基本概念2.描述进程-PCB3.task_struct和PCB的关系4.task_struct内容分类5.linux具体如何做的&#xff1f;6.查看进程 1.windows和linux中的进程 一个已经加载到内存的程序&#xf…

洛谷P1102 A-B数对 详细解析及AC代码

P1102 A-B数对 前言题目题目背景题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 提示题目分析注意事项 代码经典二分&#xff08;O(nlgn)&#xff09;酷炫哈希&#xff08;O(n)&#xff09; 后话额外测试用例样例输入 #2样例输出 #2 王婆卖瓜 题目来源 前言 酷&…

生成式人工智能的“经济学”,The Economic Case for Generative AI#a16z

a16z召集了行业精英&#xff0c;为我们带来了有关生成式AI的洞察。在创造力方面&#xff0c;生成式AI带来了3-4倍量级的成本优势&#xff0c;更多新的需求将诞生。 AI REVOLUTION The Economic Case for Generative AI Martin Casado MixCopilot 大家好&#xff0c;欢迎来到本期…

遇到python程序是通过sh文件启动的,如何调试

说明 下载的源码总会遇到这样启动的&#xff1a; 并且发现shell文件内容很多&#xff0c;比较复杂&#xff0c;比如&#xff1a; 解决方案 这时候想要调试&#xff0c;可以通过端口连接的方式调试&#xff0c;具体方法如下&#xff1a; 在vscode调试按钮中添加远程附加调试…

【kubernetes】pod的生命周期

文章目录 1、概述2、pod的生命期3、pod阶段4、容器状态5、容器重启策略6、pod状况6.1 Pod就绪态6.2 Pod就绪态的状态6.3 Pod网络就绪 7、容器探针7.1 检查机制7.2 探测结果7.3 探测类型 8、Pod的终止8.1 强制终止Pod8.2 Pod的垃圾收集 1、概述 pod遵循预定义的生命周期&#x…

【MogDB/openGauss误删未归档的xlog日志如何解决】

在使用MogDB/openGauss数据库的过程中&#xff0c;有时候大量业务&#xff0c;或者导数据会导致pg_xlog下的日志数量持续增长&#xff0c;此时如果xlog的产生频率太快&#xff0c;而来不及自动清理&#xff0c;极有可能造成pg_xlog目录的打满。如果对数据库的xlog不太了解的时候…

解决Java中https请求接口报错问题

1. 解决SSLException: Certificate for &#xff1c;域名&#xff1e; doesn‘t match any of the subject alternative报错问题 1.1 问题描述 最近在做一个智能问答客服项目&#xff0c;对接的是云问接口&#xff0c;然后云问接口对接使用的是https方式&#xff0c;之前一直…

git push超过100MB大文件失败(remote: fatal: pack exceeds maximum allowed size)

push代码的时候&#xff0c;有时会出现如下问题 remote: fatal: pack exceeds maximum allowed size error: failed to push some refs to ‘git.n.xiaomi.com:fuzheng1/nl2sql.git’ 解决方案&#xff1a; 将本地 http.postBuffer 数值调整到GitHub服务对应的单次上传大小配置…

凭什么不让使用外键!?

△Hollis, 一个对Coding有着独特追求的人△ 这是Hollis的第 434 篇原创分享 作者 l Hollis 来源 l Hollis&#xff08;ID&#xff1a;hollischuang&#xff09; MySQL 外键&#xff08;Foreign Key&#xff09;是用于建立表之间关系的&#xff0c;它定义了一个表中的一列或一组…

IDEA JAVA项目 导入JAR包,打JAR包 和 JAVA运行JAR命令提示没有主清单属性

一、导入JAR包 1、java项目在没有导入该jar包之前&#xff0c;如图&#xff1a;2、点击 File -> Project Structure&#xff08;快捷键 Ctrl Alt Shift s&#xff09;&#xff0c;点击Project Structure界面左侧的“Modules”如图&#xff1a;3.在 “Dependencies” 标签…

Javaweb之javascript的详细解析

JavaScript html完成了架子&#xff0c;css做了美化&#xff0c;但是网页是死的&#xff0c;我们需要给他注入灵魂&#xff0c;所以接下来我们需要学习JavaScript&#xff0c;这门语言会让我们的页面能够和用户进行交互。 1.1 介绍 通过代码/js效果演示提供资料进行效果演示&…

使用Kotlin与Unirest库抓取音频文件的技术实践

目录 摘要 一、Kotlin与Unirest库概述 二、使用Kotlin和Unirest抓取音频文件 1、添加Unirest依赖 2、发送HTTP请求获取音频文件 3、保存音频文件 三、完整代码示例 四、注意事项 结论 摘要 本文详细阐述了如何使用Kotlin编程语言与Unirest库抓取网络上的音频文件。首…

kimera论文阅读

功能构成&#xff1a; Kimera包括四个关键模块: Kimera-VIO的核心是基于gtsam的VIO方法[45]&#xff0c;使用IMUpreintegration和无结构视觉因子[27]&#xff0c;并在EuRoC数据集上实现了最佳性能[19]; Kimera-RPGO:一种鲁棒姿态图优化(RPGO)方法&#xff0c;利用现代技术进…

伦敦金周末可以交易吗,黄金休市时间是那些?

伦敦金是国际性投资产品&#xff0c;主要交易中心有亚洲、欧洲和美洲&#xff0c;在时差的作用下&#xff0c;三大市场相互连接&#xff0c;形成了全天24小时几乎不间断的交易时间&#xff0c;也为炒金者们提供了充分的操作机会。即便如此&#xff0c;在一些特定的时间段内&…

springboot前后端时间类型传输

springboot前后端时间类型传输 前言1.java使用时间类型java.util.Date2.java使用localDateTime 前言 springboot前后端分离项目总是需要进行时间数据类型的接受和转换,针对打代码过程中不同的类型转化做个总结 1.java使用时间类型java.util.Date springboot的项目中使用了new …

电脑发热发烫,具体硬件温度达到多少度才算异常?

环境&#xff1a; 联想E14 问题描述&#xff1a; 电脑发热发烫,具体硬件温度达到多少度才算异常? 解决方案&#xff1a; 电脑硬件的温度正常范围会因设备类型和使用的具体硬件而有所不同。一般来说&#xff0c;以下是各种硬件的正常温度范围&#xff1a; CPU&#xff1a;正…

【10套模拟】【2】

关键字&#xff1a; 哈希函数解决问题、进栈、无向图边与度、双向链表插入新结点、折半查找判定树ASL、孩子兄弟表示法、树变二叉、快排partiction划分