1.Docker的基本组成:
镜像(images): Docker镜像就好比是一个模板,可以通过这个模板来创建容器服务,tomcat镜像 --> run --> tomcat01容器(提供服务器),通过这个镜像可以创建多个容器(最终服务运行或者项目运行就是在容器中的)。
容器(container): Docker利用容器技术,独立运行一个或者一个组应用,通过镜像来创建的。容器可以启动,停止,删除等。 目前就可以把这个容器理解为就是一个简易的linux系统
仓库(repository): 仓库就是存放镜像的地方 ,仓库分为公有仓库和私有仓库。 Docker Hub(默认是国外的),阿里云、华为云等都有容器服务器(建议配置镜像加速)
2.帮助命令:
Docker version:显示docker的版本信息。
Docker info:显示docker的系统信息,包括镜像和容器的数量。
Docker --help:查看所有帮助命令。
docker COMMAND --help;docker start --help: 查看帮助命令。
Docker start...: 启动已停止的容器。
Docker stop...: 停止正在运行的容器。
Docker restart...: 重启正在运行的容器。
# -it 表示 与容器进行交互式启动 -d 表示可后台运行容器 (守护式运行) --name 给要运行的容器 起的名字 /bin/bash 交互路径 docker run -it -d --name 要取的别名 镜像名:Tag /bin/bash
3.镜像命令:
Docker images:查看所有本地的主机上的镜像
# 解释
REPOSITORY 镜像的仓库源
TAG 镜像的标签
IMAGE ID 镜像的id
CREATED 镜像的创建时间
SIZE 镜像的大小
Docker images -a/--all:显示所有镜像.
Docker images -q/--quiet:仅显示镜像id
docker search ....:搜索镜像(过滤找出);docker search mysql --filter=STARS=3000:找出名为mysql的stars收藏数大于3000的镜像。
# 参数解释
NAME 镜像名字
DESCRIPTION 镜像描述
STARS 镜像收藏数
docker pull 下载镜像
docker pull 镜像名[:tag];如果不写tag,默认就是latest,最新的版本
docker pull mysql:5.7;指定版本下载;
docker rmi 删除镜像
docker rmi -f 镜像id :删除指定的镜像;docker rmi -f df2d4797ded8:删除镜像df2d4797ded8;
docker rmi -f 镜像id 镜像id 镜像id :删除多个镜像(空格分隔);
运行简单的命令 docker images -a 或 docker images 。 之后,明确要删除哪个镜像,然后执行简单命令 docker rmi <your-image-id> 。 然后,列出所有镜像并检查,可以确认镜像是否已删除。
docker rmi -f :删除全部的镜像
4.容器命令:
Docker run...:新建容器并启动;
docker run -d --name nginx001 -p 8899:80 nginx: 启动名为nginx001,端口号为8899的 nginx容器
# 参数说明
--name :容器名字:用来区分容器
-d :后台方式运行:相当于nohup
-it : 使用交互式运行:进入容器查看内容
-p : 指定容器的端口(四种方式)小写字母p
-p ip:主机端口:容器端口
-p 主机端口:容器端口(常用)
-p 容器端口
容器端口
-P : 随机指定端口(大写字母P)
docker ps # 列出当前正在运行的容器
# 命令参数可选项
-a # 列出当前正在运行的容器+历史运行过的容器
-n=? # 显示最近创建的容器,-n=2是显示最近创建的2条容器:
-q # 只显示容器的编号
Exit:直接停止,并退出容器;
Ctrl+P+Q:容器不停止,退出 ;
Docker rm...: 删除容器;
docker rm -f容器id:强制删除指定的容器;
docker rm 容器id: 删除容器(不能删除正在运行的容器)
docker rm -a:删除所有容器
Docker start 容器id: 启动已停止的容器。
Docker stop 容器id: 停止正在运行的容器。
Docker restart 容器id: 重启正在运行的容器。
Docker kill 容器id: 强制停止当前容器。
5.其他命令:
docker run -d 镜像名:后台启动容器;
docker logs -tf 容器id:显示日志;
docker logs -tf --tail number 容器id:可以显示的日志条数;
Docker rop 容器id:查看容器中进程的信息;
docker inspect 容器id:查看镜像的元数据;
进入当前后台正在运行的容器:
docker exec -it 容器id /bin/bash: 进入容器后开启一个新的终端,可以在里面操作
docker attach 容器id: 进入容器正在执行的终端,不会启动新的进程;
docker cp : 从容器内拷贝文件到主机上;
docker cp /usr/local/tomcat/webapps.dist/* /usr/local/tomcat/webapps:表示拷贝文件webapps.dist到webapps;