镜像相关命令
帮助命令
docker version # 查看docker的版本信息 docker info # 显示docker的系统详细信息,包括镜像、容器的数量和状态 docker 命令 --help # 帮助命令
镜像相关命令
sudo docker images # 列出所有镜像 sudo docker images --help # 帮助信息 sudo docker images -q # 列出镜像ID,常用命令 sudo docker images -a # 列出所有镜像
镜像搜索命令
docker search # 搜索镜像
镜像拉取命令
docker pull 镜像名称 # 拉取镜像
删除镜像命令
docker rmi -f 镜像名或者镜像id # 删除镜像 docker rmi -f 镜像id 镜像id 镜像id # 删除多个容器 docker rmi -f $(docker images -aq) # 删除全部镜像
容器相关命令
创建容器命令
# docker run [可选参数] imageid # 参数说明 --name='容器名' # 设定容器名称 -d # 以后台方式运行,光带这个参数后台不会启动 -it # 使用交互方式运行,进入容器查看内容 -p # 指定容器端口 8080:8080(小写的p) -p 8080:8080 # 主机端口:容器端口 ,主机端口映射到容器端口 ==此为最常用== -p ip:主机端口:容器端口 # 指定主机ip -p 8080 # 主机端口 8080 # 直接写端口号 -P # 随机指定端口(大写的P) --memory 512m --cpus 1 # 限制容器使用内存和cpu核心数。
启动和停止容器命令
docker start 容器id # 启动容器 docker restart 容器id # 重启容器 docker stop 容器id # 停止当前正在运行的容器 docker kill 容器id # 强制停止当前运行容器,在stop报错时使用
删除容器命令
docker rm 容器id # 删除容器,不能删除正在运行的容器 docker rm -f $(docker ps -aq) # 删除所有容器 -f 是强制删除,无论是否运行都删除 docker ps -a -q | xargs docker rm # 删除所有容器的另一种方法
查看容器日志
docker logs -tf --tail 10 容器id # 查看容器日志,-tf是显示所有日志,--tail 10是显示最近10条日志 -f是格式,-t是时间戳 docker volume ls # 查看已创建的数据卷 docker volume prune # 清理未使用的数据卷
查看容器中的进程
docker top 容器id UID PID PPID C STIME TTY 当前用户id 父id 进程id # 这个就类似于ubuntu的top命令
查看容器元数据
docker inspect 容器id # 较为复杂,以后慢慢看
进入运行中的容器
# 方法一 docker exec -it 容器id /bin/bash # 以ubuntu容器为例,要指定bashshell,进入容器后开始一个新的终端,可以操作(常用)-i是交互,-t是终端显示 # 方法二 docker attach 容器id # 进入容器正在执行的终端,不会启动新的进程
拷贝容器数据到主机
docker cp 容器id:/目录/...../ 路径 # 与cp用法差不多。无论容器是否运行都可以拷贝。
查看容器占用内存
docker stats # 查看当前所有docker容器占用内存情况