zoukankan      html  css  js  c++  java
  • Ubuntu安装Docker

    Docker架构

    docker的架构设计分为三个组件:一个客户端,一个REST API和一个服务器(守护进程):

    • Client :与REST API交互。主要目的是允许用户连接守护进程。
    • REST API:充当客户端和服务器之间的接口,实现通信。
    • 守护进程:负责实际管理容器 - 启动,停止等。守护进程监听来自docker客户端的API请求。

    环境

    WSL Ubuntu 20.4
    查看系统版本

    lsb_release -a
    cat /proc/version
    

    image

    官网

    Docker官网
    Ubuntu安装Docker文档

    使用仓库安装

    卸载旧版Docker,docker, docker.io, docker-engine都是旧版Docker名字。

    sudo apt-get remove docker docker-engine docker.io containerd runc
    

    设置仓库

    更新apt-get,安装包使得apt可以使用https。

     sudo apt-get update
     sudo apt-get install \
        ca-certificates \
        curl \
        gnupg \
        lsb-release
    

    image
    添加Docker官方的GPG密钥

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    

    image
    设置stable仓库

    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
      $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    

    安装Docker引擎

    更新apt包索引,安装最新版本的Docker Engine和containerd

    sudo apt-get update
    sudo apt-get install docker-ce docker-ce-cli containerd.io
    

    image

    如果想要安装特定版本Docker Engine,需要在 repo 中列出可用版本,然后选择并再次安装

    #列出所有版本
    apt-cache madison docker-ce
    #安装特定版本,例如: 5:20.10.12~3-0~ubuntu-focal
    sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
    

    image

    测试Docker

    启动Docker服务

    #启动Docker服务
    sudo service docker start
    

    image

    下载测试映像并在容器中运行它。当容器运行时,它会打印一条消息并退出。

    sudo docker run hello-world
    

    image

    卸载Docker

    #卸载Docker Engine、CLI和Containerd包
    sudo apt-get purge docker-ce docker-ce-cli containerd.io
    #主机上的映像、容器、卷或自定义配置文件不会自动删除。删除所有镜像、容器和卷
    sudo rm -rf /var/lib/docker
    sudo rm -rf /var/lib/containerd
    

    从包安装

    去https://download.docker.com/linux/ubuntu/dists/ 选择你的Ubuntu版本,然后浏览pool/stable/,选择amd64, armhf,arm64,或s390x,并下载.deb文件要安装引擎版本。
    image

    安装 Docker Engine

    sudo dpkg -i /path/to/package.deb
    

    Docker 守护进程自动启动。

    报错

    docker: Error response from daemon: OCI runtime create failed: container_linux.go:380

    docker run hello-world时报错。
    image
    原因是docker的版本和linux的内核版本不兼容,查了下是WSL 1是不支持Docker的守护进程的。可以使用Docker CLI连接到通过Docker for Windows或任何其他VM 运行的远程Docker守护进程。WSL 2可以完美支持Docker守护进程。

    如果这篇文章对你有用,麻烦关注一下本人微信公众号~
    微信公众号二维码
  • 相关阅读:
    Windows Server 2012配置开机启动项
    Windows Server 2019 SSH Server
    NOIP2017 senior A 模拟赛 7.7 T1 棋盘
    Noip 2015 senior 复赛 Day2 子串
    Noip 2015 senior复赛 题解
    Noip 2014 senior Day2 解方程(equation)
    Noip 2014 senior Day2 寻找道路(road)
    Noip 2014 senior Day2 无线网络发射器选址(wireless)
    Noip2014senior复赛 飞扬的小鸟
    Noip 2014 senior 复赛 联合权值(link)
  • 原文地址:https://www.cnblogs.com/aeolian/p/15702497.html
Copyright © 2011-2022 走看看