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

一、Docker 安装集

一、Docker CentOS

  • https://docs.docker.com/engine/install/centos/ 在 CentOS 上安装 Docker Engine
# Docker要求CentOS系统的内核版本高于3.10:

# Docker从1.13版本之后,采用时间线的方式作为版本号:
1. 分为社区版CE和企业版EE。
2. 社区版是免费提供给个人开发者和小型团体使用的。
3. 企业版会提供额外的收费服务(如:经过官方测试认证过的基础设施、容器、插件等)。

# 社区版按照 stable 和 edge 两种方式发布:
1. 每个季度更新stable版本(如:17.06、17.09)。
2. 每个月份更新edge版本(如:17.09、17.10)。

1. 先决条件

  • 删除存在的 Docker
# 卸载旧版本的包
$ sudo yum erase 'docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64'
# 1. 查看系统的内核版本
$ sudo uname -r	

# 2. 确保`yum`包更新到最新(需使用`root`权限)
$ sudo yum --version
$ sudo yum update

# 3. 卸载旧版本
$ sudo yum remove docker 'docker-common' 'docker-selinux' 'docker-engine'

# 4. 安装需要的软件包
$ sudo yum install -y 'yum-utils' 'device-mapper-persistent-data' 'lvm2'
# `yum-util`提供`yum-config-manager`功能
# 另外两个是`devicemapper`驱动依赖的

# 5、设置`yum`源
$ sudo yum-config-manager --add-repo 'https://download.docker.com/linux/centos/docker-ce.repo'	

2. 查询仓库中 Docker 版本

$ yum list 'docker-ce' --showduplicates | sort -r

3. 安装

  • https://download.docker.com/linux/centos/7/x86_64/stable/Packages/ containerd.io 包
# 1. 由于`repo`中默认只开启`stable`仓库(故这里安装的是最新稳定版:17.12.1)
$ sudo yum install 'docker-ce'  
#或 sudo yum install docker-ce-17.12.1.ce

# 2. 过时
$ yum install -y docker	

# 3. 安装
$ sudo yum install -y 'docker-ce' 'docker-ce-cli' 'containerd.io' --allowerasing
`
--allowerasing # 替换冲突的软件包
--skip-broken # 跳过无法安装的软件包
--nobest # 不只使用最佳选择的软件包
`
# 如果上面安装报错,此时需要安装新版`containerd.io`
$ sudo dnf install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
# 再装剩下两个
$ sudo yum install 'docker-ce' 'docker-ce-cli'

# 4. 安装
$ yum install 'docker-io'

4. 启停

# 1. 启动docker
$ sudo systemctl start docker	
	
# 2. 停止docker
$ sudo systemctl stop docker	

# 3. 重启`docker`
$ sudo systemctl restart docker	

# 设置开机启动docker
$ sudo systemctl enable docker 
# 取消开机启动docker
$ sudo systemctl disnable docker	
# 1. 查看docker状态
$ sudo systemctl status docker

# 2. 查看docker进程
$ ps -ef | grep docker

5. 验证

# 查看docker版本信息
$ docker version	

# 查看docker版本
$ docker -v		

# 查看docker概要信息
$ docker info	

# 查看docker帮助文档	
$ docker --help 	

6. 测试

# 测试`HelloWorld`案例
$ docker pull hello-world

$ docker run hello-world
#打印 Hello from Docker 表示成功安装

二、Docker Ubuntu

  • https://zhuanlan.zhihu.com/p/145399643 Ubuntu中Unmet dependencies和apt --fix-broken install

三、Docker 配置

1. 配置 Docker 镜像加速器 USTC

  • https://lug.ustc.edu.cn/wiki/mirrors/help/docker USTC 开源镜像
# USTC开源镜像。https://lug.ustc.edu.cn/wiki/mirrors/help/docker
1. USTC是老牌的Linux镜像服务提供者了,在Ubuntu-5.04版本的时候就在用。
2. ustc docker mirror 的优势之一就是不需要注册,是真正的公共服务。
# 修改配置文件(如果该文件不存在就手动创建)
$ vi /etc/docker/daemon.json
`
{
  "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
`

2. 配置 Docker 镜像加速器阿里云

  • https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors?spm=5176.12901015.0.i12901015.76b5525c3gx6yc 阿里云镜像地址
  • 点击控制台 > 产品与服务 > 弹性计算 > 容器镜像服务 > 镜像加速器
# 1. 创建/etc/docker文件夹
$ sudo mkdir -p /etc/docker

# 2. 配置镜像地址
$ sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://ui30dahv.mirror.aliyuncs.com"]
}
EOF

# 3. 重启daemon
$ sudo systemctl daemon-reload

# 4. 重启docker服务	
$ sudo systemctl restart docker	

3. 配置 Docker 日志驱动

# Docker 容器的日志默认会存储在 /var/lib/docker/containers/<container_id>/<container_id>-json.log 文件中。
# 如果容器长时间运行且产生大量日志,会导致该目录占用大量空间。
# 可以通过修改 Docker 守护进程的配置文件来配置日志驱动,限制日志的大小和数量。

# 编辑 Docker 配置文件,通常为 /etc/docker/daemon.json,如果文件不存在则创建它。
1. 将日志驱动设置为 json-file。
2. 并限制每个日志文件的最大大小为 10MB。
3. 最多保留 3 个日志文件。
4. 配置完成后,重启 Docker 服务使配置生效,sudo systemctl restart docker。
{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
  }
}

http://www.kler.cn/a/403798.html

相关文章:

  • 大模型实操练习三、盘古大模型API使用方法(入门阶段)
  • 06 —— Webpack优化—压缩过程
  • 【蓝桥杯算法】Java的基础API
  • AI数字人视频小程序:引领未来互动新潮流
  • linux 常用命令指南(存储分区、存储挂载、docker迁移)
  • 学习虚幻C++开发日志——委托(持续更新中)
  • 脸书Facebook 多账号在同一设备登录且防关联的攻略!
  • Win11 24H2新BUG或影响30%CPU性能,修复方法在这里
  • k8s资源对象管理
  • Gin 框架中的表单处理与数据绑定
  • 第十九天 决策树与随机森林
  • Python循环请求接口
  • 高效协作:前后端合作规范与应对策略
  • 接口压力测试、性能测试工具
  • Python和MATLAB及Julia示例3D残差U-Net
  • Linux驱动开发(9):pinctrl子系统和gpio子系统--led实验
  • http响应码https的区别
  • PostgreSQL常用字符串函数与示例说明
  • 151页PDF | XX集团数字化转型SAP项目规划方案(限免下载)
  • 天地图电子地图矢量地图底图结合图像学实现风格底图地图
  • Notepad++--在开头快速添加行号
  • Codeforces Round 988 (Div. 3)
  • CTR之行为序列建模用户兴趣:Temporal Interest Network(WWW‘2024)
  • Go语言跨平台桌面应用开发新纪元:LCL、CEF与Webview全解析
  • 修改Android Studio项目配置JDK路径和项目Gradle路径的GUI工具
  • 基于YOLOv8深度学习的违法暴力行为检测系统研究与实现(PyQt5界面+数据集+训练代码)