环境

  • Ubuntu18.04/20.04 X64

安装

使用自动化安装脚本安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

使用官方仓库安装

  1. 卸载旧版本的docker:

    $ sudo apt-get remove docker docker-engine docker.io containerd runc
  2. 安装相关apt包:

    $ sudo apt-get update
    $ sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
  3. 添加Docker官方GPG key:

    $ sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -  
  4. 设置稳定版的Docker仓库

    $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
  5. 执行安装命令:

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

    安装测试:

    sudo systemctl start docker
    sudo docker run hello-world 

    Docker相关操作

  • 避免输入sudo:
    sudo usermod -aG docker xxx
  • 安装Ubuntu16镜像:
    docker pull ubuntu:16.04
  • 查看本地所有image
    docker images
  • 删除镜像,先删除引用这个镜像的容器,再删除镜像
    docker rmi [image]
  • 清理镜像,临时、没被使用的镜像
    docker image prune
  • 查看本地所有容器(注意 容器ID-CONTAINER ID)
    docker ps -a
  • 创建容器
    docker run -itd --name=容器名 --restart=always -v ~/ubuntu-share:/home/share ubuntu:16.04 /bin/bash
    -v为数据持久化路径
  • 链接到容器,并获取一个伪终端:
    docker exec -it 容器名 /bin/bash
  • 退出容器伪终端
    exit使用快捷键 Ctrl+D
  • 启动容器
    docker start 容器ID或容器名
  • 停止容器
    docker stop 容器ID或容器名
  • 杀死容器
    docker kill 容器ID或容器名
  • 删除容器
    docker rm 容器ID
  • 开机自启动容器
    docker run时添加--restart=always
    如果已经run过,使用update进行更新:
    docker update --restart=always 容器名
    还可以添加容器尝试重启最大次数,默认为永远重启:
    docker run --restart=on-failure:10 xxx
  • 保存容器为新的镜像
    docker commit -m "xxx" <CONTAINER ID> <TEPO:TAG>
  • 镜像保存导入导出
    docker save ID > xxx.tar
    docker load < xxx.tar
  • 容器保存导入导出
    docker export ID >xxx.tar
    docker import xxx.tar containr:v1