【服务器知识】linux环境下安装docker

文章目录

以下是在Linux系统中安装Docker并配置私有仓库的两种方法(命令行安装和安装包安装)的详细步骤:


一、通过命令行安装Docker(推荐)

1. 使用官方脚本自动安装
bash 复制代码
# 下载并运行Docker官方安装脚本
curl -fsSL https://get.docker.com | sudo sh
2. 验证安装
bash 复制代码
sudo docker run hello-world

二、通过安装包手动安装

1. 下载Docker安装包
  • Debian/Ubuntu

    bash 复制代码
    wget https://download.docker.com/linux/ubuntu/dists/$(lsb_release -cs)/pool/stable/amd64/docker-ce_24.0.7-1~ubuntu.22.04~jammy_amd64.deb
  • CentOS/RHEL

    bash 复制代码
    wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-24.0.7-1.el7.x86_64.rpm
2. 安装依赖包
  • Debian/Ubuntu

    bash 复制代码
    sudo apt update && sudo apt install ./docker-ce*.deb
  • CentOS/RHEL

    bash 复制代码
    sudo yum install ./docker-ce*.rpm

三、配置Docker使用私有仓库

1. 修改Docker配置文件

编辑 /etc/docker/daemon.json(若文件不存在则新建):

bash 复制代码
sudo nano /etc/docker/daemon.json

添加以下内容(假设私有仓库地址为 my-registry.com:5000):

json 复制代码
{
  "insecure-registries": ["my-registry.com:5000"]
}
2. 重启Docker服务
bash 复制代码
sudo systemctl restart docker
3. 验证私有仓库配置
bash 复制代码
sudo docker info | grep "Insecure Registries"

四、两种安装方式的对比

步骤 命令行安装 安装包安装
适用场景 网络通畅,需要最新版本 离线环境或需固定版本
依赖管理 自动解决依赖 需手动安装依赖包
更新支持 支持通过包管理器更新 需手动下载新包更新
复杂度 简单快捷 需手动下载和验证安装包

五、附加操作(私有仓库登录)

如果私有仓库需要认证,使用以下命令登录:

bash 复制代码
sudo docker login my-registry.com:5000 -u <用户名> -p <密码>

六、常见问题

  1. 权限不足

    bash 复制代码
    sudo usermod -aG docker $USER  # 将当前用户加入docker组
    newgrp docker                 # 刷新用户组
  2. 私有仓库无法连接

    • 确保防火墙放行相关端口(默认 5000)。
    • 检查 daemon.json 格式是否正确(JSON语法严格)。
  3. TLS证书问题

    • 若私有仓库使用HTTPS但无有效证书,需在 insecure-registries 中添加地址。
    • 若有有效证书,可跳过 insecure-registries 配置。

通过以上步骤,您可以在Linux系统中灵活选择安装Docker的方式,并成功配置私有仓库。

相关推荐
Dream of maid27 分钟前
Linux(下)
linux·运维·服务器
齐鲁大虾29 分钟前
统信系统UOS常用命令集
linux·运维·服务器
Benszen1 小时前
Docker容器化技术实战指南
运维·docker·容器
ZzzZZzzzZZZzzzz…1 小时前
Nginx 平滑升级:从 1.26.3 到 1.28.0,用户无感知
linux·运维·nginx·平滑升级·nginx1.26.3·nginx1.28.0
Hommy881 小时前
【开源剪映小助手】Docker 部署
docker·容器·开源·github·aigc
一叶知秋yyds2 小时前
Ubuntu 虚拟机安装 OpenClaw 完整流程
linux·运维·ubuntu·openclaw
专吃海绵宝宝菠萝屋的派大星3 小时前
使用Dify对接自己开发的mcp
java·服务器·前端
斯普信云原生组3 小时前
Prometheus 环境监控虚机 Redis 方案(生产实操版)
运维·docker·容器
大数据新鸟3 小时前
操作系统之虚拟内存
java·服务器·网络
喵了几个咪3 小时前
如何在 Superset Docker 容器中安装 MySQL 驱动
mysql·docker·容器·superset