当前位置: 首页 > java >正文

认识Docker/安装Docker

一、认识Docker

  • Docker的定义

        Docker 是一个开源的应用容器引擎,允许开发者将应用及其依赖打包到一个轻量级、可移植的容器中。容器化技术使得应用可以在任何支持 Docker 的环境中运行,确保环境一致性。

  • Docker的核心组件

    • Docker Engine:负责创建和管理容器的核心服务;
    • Docker Image:一个只读模板,包含运行应用所需的代码、库和配置文件;
    • Docker Container:Docker镜像的运行实例,是一个独立的、可执行的软件包;
    • Dockerfile:一个文本文件,包含构建Docker镜像的指令。

二、安装Docker

  • 卸载旧的版本(如果之前有安装过需要);

$ sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-selinux \docker-engine-selinux \docker-engine
  • 更新包索引并安装依赖;

 sudo yum install -y yum-utils
  • 添加Docker官方的GPG密钥;

sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
  • 添加yum源(由于某种不可抗的原因,需要源换成国内源);

#添加源
curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#换源
sudo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
  • 安装Docker;

sudo yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
  • 启动docker;

#因为我用的是Rocky linux 所以防火墙使用的使用的是nftables,docker并不支持,所以需要改成iptables;
vim /etc/firwalld/firewalld.conf
FirewallBackend=iptables#启动docker
sudo systemctl enable docker && systemctl start docker#建立docker组
sudo groupadd docker
#将当前用户加入docker组
sudo usermod -aG docker $USER#测试docker不成功,配置镜像加速sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://do.nark.eu.org","https://dc.j8.work","https://docker.m.daocloud.io","https://dockerproxy.com","https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn"]
}
EOF#重启docker
systemctl daemon-reload 
systemctl restart docker

        Docker安装完毕,下面玩转Docker吧!

http://www.xdnf.cn/news/6152.html

相关文章:

  • C及C++的SOAP协议库
  • 相关行业发展趋势写一个爬虫程序
  • 力扣3337. 字符串转换后的长度 II随笔
  • 2024年全国青少年信息素养大赛-算法创意实践C++ 华中赛区(初赛)历年真题
  • HTML5 浮动(Float)详解
  • 上海OA系统哪家好?厂商有哪些?
  • 如何在终端/命令行中把PDF的每一页转换成图片(PNG)
  • 从0开始学linux韦东山教程第三章问题小结(4)
  • 易学探索助手-个人记录(十)
  • redis 缓存穿透,缓存击穿,缓存雪崩
  • VCS X-PROP建模以及在方针中的应用
  • 利用vba替换word中多个表格,相邻单元格的文字
  • 用Array.from实现创建一个1-100的数组
  • 探索自我重复的奇妙之旅--递归
  • 最小区域法求平面度及八种算法思路
  • AI降重率工具推荐:提升论文原创度的利器
  • windows文件共享另一台电脑资源管理器网络文件夹无法找到机器
  • AI Agent开发第66课-彻底消除RAG知识库幻觉-带推理的RAG
  • 设计模式(9)——创建型模式之工厂方法
  • FlashInfer - SparseAttention(稀疏注意力)只计算部分有意义的注意力连接,而非全部 token 对
  • x-IMU matlab zupt惯性室内定位算法
  • 微服务调试问题总结
  • 数据预处理之数据平滑处理详解
  • 学习黑客蓝牙技术详解
  • 在K8S集群中部署EFK日志收集
  • 【LINUX操作系统】线程同步与互斥
  • 《Python星球日记》 第72天:问答系统与信息检索
  • VCS758电流传感器芯片:国产化替代与高精度电流检测解决方案
  • Elasticsearch索引设计与调优
  • 数字IC后端设计实现 | 如何自动删除Innovus 中冗余的hold buffer?