一、安装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
出现如下图所以,则验证成功
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
出现如下图所示,则安装成功
注意:
执行docker version命令可能会出现如下错误:
这是因为权限的问题,这里有两种方案:
- docker命令前加上sudo来运行命令;
- 创建了docker用户组,将用户加入到docker用户组即可。(推荐该方法,不需要每次加sudo)
创建docker用户组
- 创建docker组
sudo groupadd docker
- 将用户添加到该docker组
sudo usermod -aG docker $USER(用户名)
# eg: sudo usermod -aG docker user
- 激活对docker组的更改
newgrp docker
现在执行docker命令时就不会提示上述错误了,也不需要加sudo
二、配置阿里云镜像加速器
1.登录阿里云
2.选择镜像加速器,按步骤进行配置
三、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 <文件名