Docker 官方帮助 文档地址
官方文档
#docker 的文件都存放在/var/lib/docker 下
1.帮助命令
docker version 显示docker版本信息
docker info 显示docker的系统信息,包括镜像和容器数量
docker 命令 --help 帮助文档
2.镜像命令
docker images docker 查看本地主机上的镜像 命令
docker images -a docker 查看本地主机上的镜像 命令,包括隐藏镜像
docker images -q docker 查看本地主机上的镜像 命令, 只显示ID
docker images -aq docker 查看本地主机上的镜像 命令,包括隐藏镜像,只显示ID
docker search 镜像名称 docker 搜索镜像
docker search 镜像名称 --filter=关键字=条件 docker 指定条件 搜索镜像
docker pull 镜像名称 docker 下载镜像(默认下载最新版)
docker pull 镜像名称:版本号 docker 指定版本下载
docker rmi -f 镜像ID 镜像ID docker 删除 指定ID 的镜像,可以删除多个 空格加上 要删除的 镜像ID 即可
docker rmi 镜像名称 docker 删除 指定名称 的镜像
docker rmi -f $(docker images -aq) docker 删除全部 镜像
解释:
REPOSITORY 镜像的仓库源
TAG 镜像标签
IMAGE ID 镜像的Id
CREATED 镜像的创建时间
SIZE 镜像的大小
[root@192 ~]# docker pull mysql
Using default tag: latest #如果不写tage,默认就是latest
latest: Pulling from library/mysql
bb79b6b2107f: Pull complete #分层下载 docker iamge的核心 联合文件系统
49e22f6fb9f7: Pull complete
842b1255668c: Pull complete
9f48d1f43000: Pull complete
c693f0615bce: Pull complete
8a621b9dbed2: Pull complete
0807d32aef13: Pull complete
a56aca0feb17: Pull complete
de9d45fd0f07: Pull complete
1d68a49161cc: Pull complete
d16d318b774e: Pull complete
49e112c55976: Pull complete
Digest: sha256:8c17271df53ee3b843d6e16d46cff13f22c9c04d6982eb15a9a47bd5c9ac7e2d #签名 唯一表示
Status: Downloaded newer image for mysql:latest
docker.io/library/mysql:latest # 真实地址
#等价
docker pull mysql
docker pull docker.io/library/mysql:latest
3:容器命令
//容器 是基于镜像 的 ,必须先下载进行运行才能产生容器
docker run 可选参数 image docker 新建容器 并运行 容器
--name="容器名称" 容器名称
-d 后台运行
-it 使用交互方式运行,进入容器查看内容
-p (小写) 指定容器的端口 -p 8080:8080
-p(小写) IP:主机端口:容器端口
-P(大写) 随机端口
exit 停止运行容器并退出容器
Ctrl+p+q 容器不停止运行 退出
docker ps 查看运行中的 容器
docker ps -a 查看所有容器 包括曾经运行的容器
docker ps -n=? 显示最近创建的容器 -n=1 即显示最近创建的一个容器
docker ps -q 显示容器的ID
docker ps -aq 显示所有容器的ID
docker rm 容器ID 删除容器
docker rm -f 容器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 强制停止当前容器
docker volume ls 查看所有volume (数据卷)的情况
docker volume inspect 卷名 查看数据卷的 具体位置
6:docker 其他常用命令
Docker 根据镜像创建容器 后台运行
docker run -d 镜像名 根据镜像名称在后台启动一个容器
root@192 ~]# docker run -d centos
66cee4f4493944e503edbcd4477bed9b778d7a41cb5698f8334a7a23118f1c9c
踩坑:问题 docker ps 发现 cnetos停止了
#常用的坑:
#docker 容器使用后台运行,就必须要有一个前台运行进程,docker发现没有应用,就会自动停止
#nginx,容器启动后,发现自己没有提供服务,就会立刻停掉,就没有程序了
Docker 查看日志
docerk logs 容器ID 显示日志
#显示日志参数
-tf 显示全部日志
--tail 显示个数 显示日志条数
docker top 容器ID 查看 docker 容器内部的进程信息
Docker 查看镜像的元数据
docker inspect 容器Id 查看镜像的元数据新信息
Docker 进入运行中的容器
docker exec -it 容器ID /bin/bash 进容器后开启一个新的后端,可以直接在面进行操作
docker attach 容器ID 进入容器正在执行终端,不会启动新的进程
示例:
[root@localhost ~]# docker run -it centos /bin/bash
[root@6103791d0738 /]# ls
bin dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
容器退出:
[root@6103791d0738 /]# exit
exit
[root@localhost ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
进入容器
[root@192 ~]# docker exec -it 88c647580c /bin/bash
[root@88c647580c32 /]# cd home/
#创建文件
[root@88c647580c32 home]# touch test.txt
[root@88c647580c32 home]# exit
exit
#拷贝文件
[root@192 ~]# docker cp 88c647580c:/home/test.txt /home/
[root@192 ~]# ls /home/
test.txt
[root@192 ~]#
docker 查看内存
docker stats 查看CPU 状态
完善容器中的Linux 简化指令
yum install ncurses 完善Linux指令
5.开机启动docker
systemctl enable docker 开机启动docker
systemctl start docker 启动docker