Docker官网

一、安装docker

官网链接

1.如果之前没有安装过docker,则跳过此步骤,直接执行第2步
# 产出旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
2.更新apt软件包索引,并安装软件包,以允许apt通过HTTPS使用存储库
# 更新软件包索引
sudo apt-get update
# 安装软件包
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common
3.添加Docker的官方GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
4.验证
sudo apt-key fingerprint 0EBFCD88

出现如下图所以,则验证成功

Ubuntu 账户 加入 docker用户组_端口映射

5.安装docker引擎

我们安装的是 docker-ce 版本,即社区版发行版,当然你也可以选择docker-ee企业版。

# 更新软件包索引
sudo apt-get update
# 安装docker引擎
sudo apt-get install docker-ce docker-ce-cli containerd.io
6.检查是否安装成功
docker version

出现如下图所示,则安装成功

Ubuntu 账户 加入 docker用户组_linux_02

注意:

执行docker version命令可能会出现如下错误:

Ubuntu 账户 加入 docker用户组_ubuntu_03


这是因为权限的问题,这里有两种方案:

  1. docker命令前加上sudo来运行命令;
  2. 创建了docker用户组,将用户加入到docker用户组即可。(推荐该方法,不需要每次加sudo)
创建docker用户组

官网链接

  1. 创建docker组
sudo groupadd docker
  1. 将用户添加到该docker组
sudo usermod -aG docker $USER(用户名)
# eg: sudo usermod -aG docker user
  1. 激活对docker组的更改
newgrp docker

现在执行docker命令时就不会提示上述错误了,也不需要加sudo

二、配置阿里云镜像加速器

1.登录阿里云

登录

2.选择镜像加速器,按步骤进行配置

Ubuntu 账户 加入 docker用户组_linux_04

三、docker常用命令

1.版本信息
# 查看docker版本
docker version

# 查看docker详细信息
docker info
2.镜像操作
# 查看本地镜像列表
docker images

# 查看本地镜像列表,包含中间映像层
docker images -a

# 查看本地镜像列表,只展示镜像id
docker images -q

# 设置tag
docker tag 镜像ID tag名称:版本

# 删除单个镜像
docker rmi -f 镜像ID

# 删除多个镜像
docker rmi -f 镜像ID1 镜像ID2 镜像ID3

# 删除全部镜像
docker rmi -f $(docker images -qa)

# 查询镜像
docker search 镜像名(如mysql)

# 拉取镜像,默认最新版本,即 镜像名:latest
docker pull 镜像名:版本
3.容器操作
# 新建并启动容器
# [OPTIONS]如下:
# --name 为容器指定一个名字
# -d 后台运行
# -i 以交互模式启动容器,通常与-t同时使用
# -t 为容器重新分配一个伪输入终端
# -P 随机端口映射
# -p 指定端口映射,指定主机端口与容器端口映射,hostPort:containerPort ⇒ -p 8080:8080
docker run [OPTIONS] 镜像名
eg : docker run -it -p 8088:8080 docker-test

# 查看当前正在运行的容器进程
# [OPTIONS]如下:
# -a 查看所有容器,包括已经停止的
# -q 正在运行的容器,只显示容器ID
# -n 4 查看最近创建的4个容器
docker ps

# 启动容器
docker start 容器ID或容器名

# 停止容器
docker stop 容器ID或容器名

# 强制停止容器
docker kill 容器ID或容器名

# 删除所有容器
docker rm -f $(docker ps -aq)

# 在运行的容器中执行命令
docker exec -it 容器ID或容器名 /bin/bash

# 查看容器日志
docker logs 容器名
docker logs -f 容器名

# 复制文件
# 复制文件到容器
docker cp 文件 容器名:路径
# 复制容器文件到本地
docker cp 容器名:文件 本地路径
4.拉取基础镜像,在此基础上构建镜像
# 拉取基础镜像
docker pull 镜像名:版本
# 新建并启动容器
# 做相应的修改之后构建新镜像
docker commit -m "说明" -a "作者" 容器名称 要构建的镜像名称
# 导入导出
# 将进行导出为文件
docker save 镜像名称 >文件名
# 将文件导入为镜像
docker load <文件名