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
相关推荐
lichenyang4531 天前
Docker 学习笔记(五):Docker Compose,用一个 YAML 启动前端、后端和 MongoDB
docker
lichenyang4531 天前
Docker 学习笔记(四):Dockerfile,把项目打成自己的镜像
docker·容器
lichenyang4531 天前
Docker 学习笔记(三):Docker 网络、bridge、子网和容器互通
docker·容器
lichenyang4531 天前
Docker 学习笔记(二):docker run 的参数到底在控制什么?
docker·容器
Patrick_Wilson6 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy6 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭6 天前
运行你的第一个Docker容器
后端·docker·容器
宋均浩7 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
程序员老赵8 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
WangMingHua1118 天前
LM Studio Docker 部署——本地大模型一键启动
docker