【服务器知识】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的方式,并成功配置私有仓库。

相关推荐
老友@14 小时前
JMeter 在 Linux 环境下进行生产级性能压测的完整实战指南
java·linux·jmeter·性能优化·系统架构·压测·性能瓶颈
加强洁西卡14 小时前
【RISC-V】riscv64-linux-gnu工具链都有哪些工具
linux·gnu·risc-v
2401_8658548814 小时前
轻量型服务器和云服务器的区别
运维·服务器
爱技术的小伙子14 小时前
【 Docker 快速部署 MySQL 8.0(2026最新实践)—— 一键启动 + 数据持久化 + 常见优化】
mysql·adb·docker
hunter145014 小时前
docker 在centos和ubuntu的安装
linux·docker·centos
wypywyp14 小时前
6.linux环境优化——vscdoe ssh mobaxterm
linux·运维·ssh
Cher ~14 小时前
【linux】零拷贝技术
linux·服务器·网络
lllljz14 小时前
blenderGIS出现too large extent错误
java·服务器·前端
女王大人万岁14 小时前
Go标准库 path 详解
服务器·开发语言·后端·golang
方便面不加香菜14 小时前
Linux基础开发工具--yum和vim
linux·运维·服务器