docker初级常用命令,包括镜像、容器和其他查看日志进程
帮助命令
docker version # 显示docker版本信息 docker info # 显示docker包括镜像和容器的系统信息 docker 命令 --help # 万能帮助命令
1、镜像命令
# 查看所有本地镜像 docker images # 查看命令的帮助信息 docker images --help Options: -a, --all # 列出所有镜像 -q, --quiet # 只显示镜像id # 查看所有镜像id docker images -aq 2b4cba85892a c6b70534b534 feb5d9fea6a5 # 搜索镜像 docker search [imageName] docker search [imageName] -f=START=3000 # 下载镜像 docker pull [imageName] [:tag] Using default tag: latest # 不写tag默认下载最新 latest: Pulling from library/mysql 15115158dd02: Pull complete # 分层下载 d733f6778b18: Pull complete 1cc7a6c74a04: Pull complete c4364028a805: Pull complete 82887163f0f6: Pull complete 28abcb7f57e0: Pull complete 46d27a431703: Pull complete 8e745fe86aaf: Pull complete ab75add93486: Pull complete 09e3960383f3: Pull complete 59f780965951: Pull complete 8ead2303095c: Pull complete Digest: sha256:b17a66b49277a68066559416cf44a185cfee538d0e16b5624781019bc716c122 # 签名 Status: Downloaded newer image for mysql:latest docker.io/library/mysql:latest # 真实地址 # 删除镜像 docker rmi -f [ids] # 删除单/多个镜像 docker rmi -f $(docker images -aq) # 删除所有镜像
2、容器命令
用镜像创建容器,下载一个CentOS镜像
# 下载centos镜像 docker pull centos 容器命令 # 创建创建新容器 docker run [可选参数] [image] --name="Name" # 容器名称 -d # 后台运行 -it # 互动操作 -P # 指定容器端口,端口映射 -P ip:主机端口:容器端口 -P 主机端口:容器端口 -P 容器端口 -p # 随机指定端口 # 例 启动并进入容器 PS C:\Windows\system32> docker run -it centos /bin/bash [root@07305647870c /]# ls bin etc lib lost found mnt proc run srv tmp var dev home lib64 media opt root sbin sys usr # 退出容器并停止容器 [root@07305647870c /]# exit exit # 快捷键ctrl P Q 退出容器不停止容器 # 查看容器 docker ps [可选参数] # 列出正在运行的容器 -a # 列出正在运行的容器和历史记录 -n=num # 显示最近创建的容器,num代表数量 -q # 只显示编号//id # 删除容器 docker rm [容器id] # 删除指定容器,不能删除正在运行的容器 docker rm -f $(docker ps -aq) # 删除所有容器 docker ps -a -q|xargs docker rm # 删除所有容器 # 操作创建的容器 docker start [容器id] # 启动容器 docker restart [容器id] # 重启容器 docker stop [容器id] # 停止目前正在运行的容器 docker kill [容器id] # 强制停止目前正在运行的容器
3、其他命令
容器在后台运行
# 容器在后台运行 docker run -d centos docker ps # 此时发现centos如果容器停止使用后台操作,则必须有前台过程。docker如果没有前台,它会自动停止
日志
# 查看日志 docker logs [可选参数] [容器id] -f -n --tail -t docker logs -ft --tail 10 [容器id] docker logs -ftn 10 [容器id] # 启动容器编写shell脚本允许容器有日志输出 docker run -d centos /bin/sh -c "while true;do echo huzeyo;sleep 1;"
进程
# 查看当前容器内的过程信息 docker top [容器id]
元数据
# 显示元数据 docker inspect
进入正在运行的容器
# 方式一 docker exec -it [容器id] [bashShell] # 例 docker exec -it f60ef0647eb3 /bin/bash # 方式二 docker attach [容器id] # 例 docker attach f60ef0647eb3
docker exec -it | docker attach |
---|---|
进入容器后,打开新终端 | 进入容器执行的终端 |
退出终端不关闭容器 | 退出终端关闭容器 |
拷贝命令
# 拷贝 docker cp 容器id:容器内路径 目的路径 # 例 docker cp f60ef0647eb3:/home/test.java /home