Docker——简介、安装(Ubuntu22.04)

1、简介

  • Docker 是一个开源的容器化平台,旨在简化应用程序的开发、交付和运行。它通过将应用程序及其所有依赖项打包到一个称为容器的标准化单元中,使应用程序能够在任何环境中一致地运行。Docker 解决了"在我的机器上能运行"的问题,使开发人员能够更加高效地构建和部署应用程序。
  • Docker 的主要组成部分:
    • Docker Engine :Docker 的核心组件,负责创建、管理和运行 Docker 容器。它包括三个部分:
      • Docker Daemon (dockerd):负责管理 Docker 容器的后台进程。
      • Docker CLI (docker):用于与 Docker Daemon 交互的命令行接口。
      • REST API:用于程序化地与 Docker Daemon 进行交互的接口。
    • Docker 镜像(Images):Docker 容器的只读模板,包含了应用程序及其运行环境。镜像可以通过 Dockerfile 来创建,也可以从 Docker Hub 等镜像仓库中拉取。
    • Docker 容器(Containers):镜像的实例,是一个独立运行的环境,包含应用程序及其所有依赖项。容器是轻量级且可移植的,可以在不同的主机上运行。
    • Dockerfile:定义镜像的文件,包含了一系列命令,指定了如何构建镜像。
    • Docker Hub:Docker 的官方镜像仓库,用户可以在其中发布和共享镜像。

2、安装

  • 添加Docker的官方GPG密钥,用于验证下载的软件包。
    *

    bash 复制代码
    # 更新包列表
    sudo apt-get update
    # 安装依赖工具
    sudo apt-get install ca-certificates curl
    # 创建目录
    sudo install -m 0755 -d /etc/apt/keyrings
    # 下载Docker的GPG密钥(使用阿里云的链接)
    sudo curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
    # 设置密钥权限
    sudo chmod a+r /etc/apt/keyrings/docker.asc
  • 添加Docker库到APT源列表。
    *

    bash 复制代码
    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] http://mirrors.aliyun.com/docker-ce/linux/ubuntu \
      $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
      sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt-get update
    • 【注】上述将Docker官网链接换为了阿里云链接。
  • 安装Docker包。
    *

    bash 复制代码
    sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  • 添加镜像源。
    *

    bash 复制代码
    sudo vim /etc/docker/daemon.json
    • 添加下面内容:
      *

      bash 复制代码
      { 
      "registry-mirrors": ["https://alzgoonw.mirror.aliyuncs.com"] 
      }
  • 保存后,重启服务。
    *

    bash 复制代码
    sudo service docker restart
  • 将用户添加到Docker组。
    *

    bash 复制代码
    sudo usermod -aG docker $USER
    # 重新登录以使更改生效
    newgrp docker
  • 通过运行映像来验证Docker引擎安装是否成功。
    *

    bash 复制代码
    docker run hello-world
相关推荐
sbjdhjd5 小时前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
热爱Liunx的丘丘人5 小时前
1、什么是K8s
云原生·容器·kubernetes
帷幕落秋6 小时前
Docker的两种安装
运维·docker·容器
工业一体机老司机6 小时前
工业一体机选购后的系统部署:Ubuntu下Docker容器化运行与GPIO配置
linux·ubuntu·docker·人机交互
fengkai45457 小时前
十二、Redis -2
运维·数据库·redis·容器
DolitD9 小时前
3D应用多实例并发中的GPU隔离技术路径分析
容器·gru·接口隔离原则
姜鱼问生10 小时前
docker exec 排查容器问题:从日志到进程
运维·网络·数据库·docker·容器
人生百态,人生如梦11 小时前
Ubuntu在低版本下使用ccswitch+claudecode(CCSwitch+Docker+Claude)连调教程
linux·ubuntu·docker·claudecode·ccswitch
程序员老赵11 小时前
Docker 部署 OpenViking:轻松搭建 AI Agent 上下文数据库平台
docker·开源·agent
吴声子夜歌12 小时前
Docker入门与实战——高级镜像构建
docker