首页 > 系统相关 >Linux安装Docker

Linux安装Docker

时间:2024-12-01 11:34:22浏览次数:8  
标签:容器 sudo https Linux 镜像 Docker 安装 docker

一、Docker介绍

1、Docker简介

Docker 是一种开源的容器化平台,用于开发、运维和部署应用程序。Docker 允许你将应用程序及其依赖项封装到一个标准化的容器中,并能确保在任何环境下都能一致地运行。容器是一种轻量级、可移植的虚拟化技术,它比传统的虚拟机更高效。

2、Docker 的主要功能和作用

(1)容器化:Docker 可以将应用程序及其所有依赖项(如库、文件、环境变量)打包成一个容器,这样可以确保应用在任何地方都能一致地运行,无论是在开发环境、测试环境,还是生产环境;

(2)跨平台兼容性:Docker 容器可以在不同操作系统和云平台上运行,从本地开发机器到生产服务器,再到云环境都能保持一致性;

(3)资源隔离:每个 Docker 容器都是独立的、隔离的,具有自己的文件系统、网络和进程空间,这样可以在同一台机器上运行多个容器而不会发生冲突;

(4)简化开发和运维:Docker 帮助开发者简化应用的开发、测试、部署过程,容器化的应用能够更方便地在不同环境中迁移和扩展。 对运维人员来说,Docker 提供了一种标准化的部署方式,使得管理和监控变得更加容易。

(5)镜像和容器管理:Docker 使用镜像来创建容器。镜像是包含应用程序及其依赖项的文件,Docker Hub 等容器仓库提供了大量公共镜像,用户也可以构建自定义镜像。 可以拉取(docker pull)、构建(docker build)、推送(docker push)镜像,快速实现应用程序的部署。

二、Docker安装

注意:本文以CenOS的Rocky Linux操作系统为例进行安装。

1、安装Docker仓库

Rocky Linux 使用 dnf 作为包管理工具。你可以通过安装 Docker 的官方仓库来获取最新版本的 Docker,因为 Rocky Linux 是 CentOS 的一个分支,所以配置CentOS的仓库;

sudo dnf install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
2、安装Docker

运行以下命令安装Docker引擎;

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

执行上述指令的时候可能会报错,存在一些软件包冲突和依赖问题,如下图:

解决方案:尝试通过 --allowerasing 参数来允许安装 Docker 时自动替换冲突的软件包。这可能会卸载某些不兼容的包,并安装与 Docker 兼容的版本。

sudo dnf install -y docker-ce docker-ce-cli containerd.io --allowerasing

显示一下信息,说明安装成功:

3、启动Docker服务并设置开机自启动

安装完成后,启动 Docker 服务并设置开机自启;

# 启动Docker服务
sudo systemctl start docker
# 设置Docker开机自启
sudo systemctl enable docker
4、验证安装

(1)确认 Docker 已正确安装并正在运行,下图可以看到Docker的运行情况;

sudo systemctl status docker

 (2)执行该命令可以查看Docker的版本信息,如下图所示:

sudo docker version

(3)为了确保 Docker 正常工作,可以执行以下命令测试是否能运行 Docker 容器:

sudo docker run hello-world

安装成功,大功告成!

5、允许普通用户使用Docker (可选)

安装 Docker 后,默认情况下,只有 root 用户 或者有 sudo 权限的用户才能访问 Docker 服务和执行 Docker 命令(如 docker pull、docker run 等)。这主要是因为 Docker 需要与系统的低级资源进行交互(例如网络、文件系统等),这涉及到较高的权限。如果其他普通用户也需要使用 Docker,可以通过以下两种方式之一实现:

(1)将用户添加到 Docker 组:Docker 创建了一个名为 docker 的用户组,任何加入此组的用户都可以运行 Docker 命令,而无需使用 sudo。你可以使用以下命令将某个用户添加到 Docker 组;

sudo usermod -aG docker username

添加用户后,通常需要让用户退出并重新登录,或者执行 newgrp docker 以立即生效;

(2)或者给普通用户使用 sudo 权限运行 Docker:为普通用户配置 sudo 权限,使其能够以 root 权限执行 Docker 命令,但这种方式可能较为繁琐且没有像加入 Docker 组那么简便,推荐使用第一种;

三、更换Docker镜像源

如果 Docker 下载镜像速度较慢,你可以更换国内的镜像源以加速下载。更换镜像源的过程包括配置 Docker 使用国内镜像仓库,这样可以显著提高镜像的下载速度。

1、编辑 Docker 配置文件
sudo vi /etc/docker/daemon.json
2、添加镜像源配置

源配置文件来源于这里:docker镜像加速源配置,目前可用镜像源列举(10月10日更新最新可用)_docker可用的镜像源-CSDN博客

{
  "registry-mirrors": [
    "https://docker.registry.cyou",
    "https://docker-cf.registry.cyou",
    "https://dockercf.jsdelivr.fyi",
    "https://docker.jsdelivr.fyi",
    "https://dockertest.jsdelivr.fyi",
    "https://mirror.aliyuncs.com",
    "https://dockerproxy.com",
    "https://mirror.baidubce.com",
    "https://docker.m.daocloud.io",
    "https://docker.nju.edu.cn",
    "https://docker.mirrors.sjtug.sjtu.edu.cn",
    "https://docker.mirrors.ustc.edu.cn",
    "https://mirror.iscas.ac.cn",
    "https://docker.rainbond.cc"
  ]
}
3、重启Docker服务器

修改配置文件后,重启 Docker 服务使其生效:

# 重新加载 systemd 配置
sudo systemctl daemon-reload

# 重启 Docker 服务
sudo systemctl restart docker
4、查看Docker配置

运行下列命令确认镜像源是否配置成功

sudo docker info

 输出上述信息说明Docker源更换成功!

标签:容器,sudo,https,Linux,镜像,Docker,安装,docker
From: https://blog.csdn.net/qq_41025456/article/details/144095568

相关文章

  • 按键 芯片型号max7359 linux驱动程序
    /*max7359_keypad.c-MAX7359KeySwitchControllerDriverCopyright©2009SamsungElectronicsBasedonpxa27x_keypad.cThisprogramisfreesoftware;youcanredistributeitand/ormodifyitunderthetermsoftheGNUGeneralPublicLicenseversion2asp......
  • 按键 芯片jornada680 linux驱动程序
    /*drivers/input/keyboard/jornada680_kbd.cHPJornada620/660/680/690scankeyboardplatformdriverBasedonhp680_keyb.cCopyright©2006PaulMundtCopyright©2005AndriySkulyshSplitfromdrivers/input/keyboard/hp600_keyb.cCopyright©2000YaegashiT......
  • 在 Windows Server 2025 安装过程中,确实有部分用户反馈提到,系统要求上传隐私数据(如匿
     在WindowsServer2025安装过程中,确实有部分用户反馈提到,系统要求上传隐私数据(如匿名硬件信息、诊断数据等)。虽然这些数据的上传本身是为了提升用户体验和系统兼容性,但如果你希望禁用或避免这些设置,可以通过修改注册表来实现。以下是通过注册表禁用隐私数据上传的步骤:1......
  • Windows系统使用安装ActiveMQ消息队列手把手保姆级教程踩坑实录
    文章目录一、什么是ActiveMQ1.概述2.架构3.应用场景二、下载ActiveMQ三、解压四、配置环境变量五、启动ActiveMQ六、验证安装和服务七、停止ActiveMQ八、注意事项一、什么是ActiveMQ1.概述ActiveMQ是Apache软件基金下的一个开源软件,它遵循JMS1.1规范(JavaMessage......
  • Linux提权之八大实战利器与高权限操作技巧
    文章目录LINUX提权0x01.SUID提权chmod命令Find命令(查找有SUID权限的文件)find提权nmap提权vim提权Bash提权Less或More提权nano提权CP提权awk提权0x02sudo提权0x03计划任务提权0x04内核漏洞提权0x05环境变量劫持提权0x06NFS提权0x07通配符WS提权0x08明文密码提权0x9lx......
  • html5怎么判断app是否安装?
    HTML5本身无法直接判断app是否安装。你需要借助一些技巧和变通方法,以下是几种常见的方案:UniversalLinks/AppLinks(推荐方案):这是目前推荐的最佳方案,它利用了操作系统级别的关联,能够更可靠地判断应用是否安装,并在安装的情况下直接打开应用,未安装的情况下则跳转到指定的......
  • Linux操作系统2-进程控制3(进程替换,exec相关函数和系统调用)
    上篇文章:Linux操作系统2-进程控制2(进程等待,waitpid系统调用,阻塞与非阻塞等待)-CSDN博客本篇代码Gitee仓库:Linux操作系统-进程的程序替换学习·d0f7bb4·橘子真甜/linux学习-Gitee.com本篇重点:进程替换目录一.什么是进程替换?二.进程替换函数常用的函数 2.1......
  • Git的安装和使用
    目录1.git所需软件的下载2.注册账号2.1.点击右上角的注册 2.2.填写相关信息,点击注册2.3.点击到设置中更新自己的信息2.4.实名认证2.5.我们也可以在账号信息中绑定自己的账号2.6.我们也可以在个人资料中填写自己的基本信息2.7.我们需要在邮箱管理中更新自己......
  • 【Linux】shell编程基础
    一、脚本的创建和执行创建一个1.sh文件vim1.sh在文件中写入以下内容:#!/bin/bash#或者写入#!/bin/sh#或者写入#!/bin/dash无论使用哪种脚本解释器,最终调用的可能是dash。检查默认的sh解释器:ls-l/bin/sh执行脚本文件./1.sh如果权限不足,可以......
  • RHEL9.4安装nfts驱动
    日期:2024.11.30目的:安装nfts系统,实现U盘和移动硬盘与主机互传文件打算3个U盘之间整理下数据,先创建3个挂载点[root@RHEL9~]#mkdir/mnt/mnt{1,2,3}[root@RHEL9~]#ls/mnt/mnt1mnt2mnt3插上U盘看下设备[root@RHEL9~]#manlsblkNAMElsblk-listblockde......