Docker命令篇
命令篇
基础命令
查看版本
docker version
启动docker
sudo systemctl start docker
停止docker
systemctl stop docker
重启docker
systemctl restart docker
查看docker状态
systemctl status docker
开机启动
systemctl enable docker
查看docker概要信息
docker info
查看镜像/容器/数据卷占了多少空间
docker system df
卸载docker
sudo yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
配置docker可以远程连接
- systemctl stop firewalld(关闭防火墙)
- vim /lib/systemd/system/docker.service
- ExecStart 后面追加 -H tcp://0.0.0.0:2333
- systemctl daemon-reload
镜像命令
列出本地主机上的镜像
- -a列出本地所有的镜像(含历史映像层)
- -q只显示镜像ID
- REPOSITORT:表示镜像的仓库源
- TAG:镜像的标签版本号
- IMAGE ID:镜像ID
- CREATED:镜像创建时间
- SIAE:镜像大小
docker images -a
docker images -q
docker search 搜索某个镜像是否在远程仓库
- --limit 不加默认查询25条点赞数最多
- STATRS 点赞数量
- OFFICIAL 是否是官方
- AUTOMATED 是否是自动构建的
docker search hello-world
docker search --limit 5 redis
下载镜像
- 同一个仓库有多个TAG版本 加TAG代表下载对应版本号 不加就是下载最新的latest
docker pull 镜像名字:TAG
docker pull 镜像名字
删除所有镜像、容器和 卷:
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
删除单个镜像
docker rmi -f 镜像ID
删除多个
docker rmi -f 镜像名:TAG 镜像名2:TAG
删除全部
docker rmi -f
创建一个镜像:
Docker run [image]
容器命令
启动容器: docker run 镜像名
- -t 以交互模式启动
-i 创建一个伪输入终端
- 一般都是 -it 配合使用
- exit 退出终端
- --name=容器名
- -d 启动守护式容器
重新进入容器终端
直接进去容器启动命令的终端 不会启动新的进程 用exit推出 会导致容器的停止
docker attach 容器ID /bin/bash
推荐 exec实在容器中打开新的终端 并且可以启动新的进程 用exit退出时 不会导致容器的停止
docker exec -t 容器ID /bin/bash
容器目录和主机目录互通互联(双向) (可以用来做mysql数据备份)
读写 read write
docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录:rw 镜像名
容器内只读 readonly
docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录:ro 镜像名
容器数据共享和互相传递 容器卷之间的继承 (父容器挂了 不会影响子容器)
docker run -it -- privileged=true --volumes -form 父容器名 --name 子容器名 镜像名字
查看容器详情
docker inspect 容器ID
启动已重启的容器
docker start 容器ID
重启容器
docker restart 容器ID
停止容器
docker stop 容器ID
强制停止容器
docker kill 容器ID
删除已停止的容器
docker rm 容器ID
显示当前正在运行的
docker ps
- -n 1 列出多少个
查看容器的日志
docker logs 容器ID
容器文件拷贝到主机上
docker cp 容器ID:容器内路径 目标主机路径