1.帮助启动类命令: systemctl start docker #启动Docker systemctl stop docker #停止Docker systemctl restart docker #重启Docker systemctl status docker #查看Docker状态 systemctl enable docker #开机自启动 docker info #查看Docker概要信息 docker --help #查看docker总体帮助文档 2.镜像命令: 列出本机的镜像
dokcer images 镜像名 选项说明:
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签版本号
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
images 选项说明:
-a:列出本地所有镜像(含历史镜像层)
-q:只显示镜像ID
docker search 镜像名 #查询官网库中某个镜像 选项说明:
--limit:只列出N个镜像,默认25个。
如:docker search --limit 5 redis
输出参数说明:
下载镜像: docker pull 镜像名字[:TAG] docker pull 镜像名字 没有TAG就时最新版的
等价于docker pull 镜像名字:latest
查看镜像/容器/数据卷所占的空间: docker system df 删除镜像: docker rmi 镜像名或ID号 删除多个:
docker rmi -f 镜像名1:TAG 镜像名2:TAG 删除全部:
docker rmi -f $(docker images -qa) 显示镜像构建历史: docker history 镜像名 获取容器或镜像的详细信息(元数据) docker inspect 镜像名 3.容器命令 新建+启动容器 docker run [OPTIONS] 镜像名:TAG docker run [OPTIONS] 镜像名 OPTIONS说明(常用):
--name="容器新名字" 为容器指定一个名称
-d: 后台运行容器并返回容器ID,也即启动守护式容器(后台运行)
-i:以交互模式运行容器,通常与 -t 同时使用
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用
启动交互式容器(前台有伪终端,等待交互)
-P: 随机端口映射,大写P
-p: 指定端口映射,小写p
退出容器: 进入正在运行的容器并以命令行交互
两种方式:
exit 或 ctrl+d
run进去容器,exit退出,容器停止
ctrl+p+q
run进去容器,ctrl+p+q退出,容器不停止
启动已停止运行的容器 docker start 容器ID或者容器名 重启容器: docker restart 容器ID或者容器名 停止容器: docker stop 容器ID或者容器名 强制停止容器: docker kill 容器ID或容器名 删除已停止的容器: docker rm 容器ID 一次性删除多个容器示例 docker rm -f $(docker ps -a -q) docker ps -a -q | xargs docker rm 启动守护式容器(后台服务器) 前后对比 - 指向 启动交互式容器(前台命令行)
通过 -d 指定容器的后台运行模式
docker run -d 容器名
以redis启动为例:
后台守护式启动 docker run -d redis:6.0.8 查看容器日志 docker logs 容器ID 查看容器内运行的进程 docker top 容器ID 查看容器内部细节 docker inspect 容器ID 进入运行中的容器: docker exec -it 容器ID /bin/bash
docker attach 容器ID 两者区别:
attach 直接进入容器启动命令的终端,不会启动新的进程 用exit退出,会导致容器的停止
exec 是在容器中打开新的终端,并且可以启动新的进程 用exit退出,不会导致容器的停止
从容器内拷贝文件到主机: docker cp 容器ID:容器内路径 目的主机路径 导入和导出容器 export 导出容器的内容留作为一个tar归档文件
import 从tar包中的内容创建一个新的文件系统再导入为镜像
例:
docker export 容器ID > 文件名.tar
cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号
导入导出镜像: 存出压缩文件 dokcer save -o 镜像名 导出的镜像名.tar 载入: docker load -i 镜像名.tar 我之前的文章里面也有搭建docker的,可以参阅一下 使用服务器搭建的