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

centos7安装Docker

目录

一、从 Docker 官方仓库安装最新版 Docker

1. 卸载旧版本 Docker(如果已安装)

2. 安装必要的依赖包

3. 添加 Docker 官方仓库

4. 安装 Docker 最新版本

5. 启动 Docker 并设置开机自启

6. 验证安装

7. (可选)以非 root 用户运行 Docker

注意事项:

二、使用 .tgz 文件安装特定版本 Docker

1. 下载 Docker 二进制包

2. 解压 Docker 二进制包

3. 复制 Docker 二进制文件到系统路径

4. 创建 Docker 系统服务

(1)创建 systemd 服务文件

(2)重新加载 systemd 配置

5. 启动 Docker 并设置开机自启

6. 验证 Docker 功能

7. (可选)配置非 root 用户运行 Docker

8. 配置 Docker 存储驱动(可选)

可能遇到的问题

三、安装docker-compose

1. 下载Docker-Compose

2. 设置权限

​编辑

3. 配置环境变量


  在 CentOS 7 上安装 Docker,可以选择直接从 Docker 的官方仓库安装,这样可以确保你获得的是最新的稳定版本,并且易于管理和更新。也可以基于一个特定的 .tgz 文件(例如 docker-28.1.1.tgz),这通常是 Docker 的早期版本或者非官方构建。下面我将首先介绍如何从 Docker 官方仓库安装最新版本的 Docker,然后解释如何使用 .tgz 文件安装。

一、从 Docker 官方仓库安装最新版 Docker

1. 卸载旧版本 Docker(如果已安装)

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

2. 安装必要的依赖包

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

3. 添加 Docker 官方仓库

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4. 安装 Docker 最新版本

sudo yum install -y docker-ce docker-ce-cli containerd.io

5. 启动 Docker 并设置开机自启

sudo systemctl start docker
sudo systemctl enable docker

6. 验证安装

sudo docker --version

输出类似:

Docker version 20.10.x, build xxxxxxx

7. (可选)以非 root 用户运行 Docker

sudo usermod -aG docker $USER

然后重新登录或运行:

newgrp docker

注意事项:

  1. CentOS 7 兼容性:Docker 官方支持 CentOS 7,但未来新版本可能不再支持。
  2. 防火墙设置:如果启用了防火墙,可能需要开放相关端口。

二、使用 .tgz 文件安装特定版本 Docker

        如果你有特定的需求需要安装一个特定的 .tgz 文件(例如 docker-28.1.1.tgz),你可以按照以下步骤操作:

1. 下载 Docker 二进制包

确保你已经下载了 docker-28.1.1.tgz 文件,并上传到 CentOS 7 服务器(或直接下载):

wget https://example.com/docker-28.1.1.tgz  # 替换为实际的下载链接

(如果 docker-28.1.1.tgz 是本地文件,请先上传到服务器。)


2. 解压 Docker 二进制包

tar -xzvf docker-28.1.1.tgz -C /tmp

解压后,/tmp/docker/ 目录下应该包含 dockerddocker 等可执行文件。


3. 复制 Docker 二进制文件到系统路径

sudo cp /tmp/docker/* /usr/bin/

验证是否安装成功:

docker --version
dockerd --version

应该输出类似:

Docker version 28.1.1, build xxxxxxx

4. 创建 Docker 系统服务

(1)创建 systemd 服务文件
sudo vi /etc/systemd/system/docker.service

写入以下内容:

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s[Install]
WantedBy=multi-user.target
(2)重新加载 systemd 配置
sudo systemctl daemon-reload

5. 启动 Docker 并设置开机自启

sudo systemctl start docker
sudo systemctl enable docker

检查 Docker 是否运行:

sudo systemctl status docker

如果正常,应该显示 active (running)


6. 验证 Docker 功能

sudo docker run hello-world

如果成功,会输出:

Hello from Docker!
This message shows that your installation appears to be working correctly.

7. (可选)配置非 root 用户运行 Docker

sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker  # 刷新用户组

测试非 root 用户运行:

docker ps

8. 配置 Docker 存储驱动(可选)

如果使用 devicemapper 或 overlay2,可以修改 /etc/docker/daemon.json

sudo vi /etc/docker/daemon.json

写入(示例):

{"storage-driver": "overlay2"
}

然后重启 Docker:

sudo systemctl restart docker

可能遇到的问题

  1. 依赖缺失
    • 如果 dockerd 启动失败,可能需要安装依赖:
      sudo yum install -y libseccomp iptables
      
  2. SELinux 冲突
    • 临时禁用 SELinux:
      sudo setenforce 0
      
    • 或永久禁用(需修改 /etc/selinux/config)。
  3. Firewall 阻止
    • 放行 Docker 相关端口:
      sudo firewall-cmd --permanent --add-port=2375/tcp
      sudo firewall-cmd --reload
      

三、安装docker-compose

1. 下载Docker-Compose

去github官网搜索docker-compose:https://github.com/docker/compose/

将下载好的文件放入虚拟机中

2. 设置权限

需要将DockerCompose文件的名称修改一下,给予DockerCompose文件一个可执行的权限

# 改名
mv docker-compose-linux-aarch64 docker-compose
# 设置权限
chmod 777 docker-compose

3. 配置环境变量

方便后期操作,配置一个环境变量

将docker-compose文件移动到了/usr/local/bin , 修改了/etc/profile文件,给/usr/local/bin配置到了PATH中

mv docker-compose /usr/local/binvi /etc/profile
# 添加内容: export PATH=$PATH:/usr/local/binsource /etc/profiledocker-compose -v

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

相关文章:

  • 基于三台主机搭建 Web 服务环境:Nginx、NFS 与 DNS 配置全流程
  • 【牛客网C语言刷题合集】(五)——主要二进制、操作符部分
  • SQL158 每类视频近一个月的转发量/率
  • C++:stack与queue的使用
  • Leetcode-3152 特殊数组 II
  • 进阶向:Manus AI与多语言手写识别
  • 【Spring AI 1.0.0】Spring AI 1.0.0框架快速入门(5)——Tool Calling(工具调用)
  • scrapy框架新浪新闻
  • 【大语言模型入门】—— Transformer 如何工作:Transformer 架构的详细探索
  • 用LangGraph实现聊天机器人记忆功能的深度解析
  • k8s搭建nfs共享存储
  • AI应用:电路板设计
  • Linux 线程概念与控制
  • Excel文件批量加密工具
  • Intellij Idea--解决Cannot download “https://start.spring.io‘: Connect timedout
  • 爬虫自动化:一文掌握 PyAutoGUI 的详细使用
  • Kruskal算法
  • 智能Agent场景实战指南 Day 23 : Agent安全与隐私保护
  • 百度前端面试题目整理
  • VUE进阶案例
  • 【C#学习Day13笔记】静态成员、接口、运算符重载和索引器
  • 小杰数据结构(one day)——心若安,便是晴天;心若乱,便是阴天。
  • python基础:request请求Cookie保持登录状态
  • p5.js 从零开始创建 3D 模型,createModel入门指南
  • MongoDB系列教程-教程概述
  • SQL 怎么学?
  • STM32--DHT11(标准库)驱动开发
  • spring cloud sentinel 动态规则配置
  • 【华为机试】20. 有效的括号
  • docker docker、swarm 全流程执行