先介绍一下关于docker我的文章大纲
1 初始docker篇。要明白它是干什么的,为什么要用它和它的基础工作原理
2 docker基础命令篇。要学会服务相关命令,镜像相关命令,容器相关命令和认识各种表头
3 数据卷篇。学会-v的使用
4 重难点,镜像的压缩传递和dockerfile的编写。
5 私有镜像仓库篇。实现私有仓库构建和镜像上传和拉取
可以根据需求直接进我主页学习
我会穿插这实例来讲解,图文并茂,最好跟着做一遍实例,加油
docker有三种命令。
有服务命令,镜像命令,容器命令。
服务命令
1 systemctl start docker启动docker服务
2 systemctl stop docker停止docker服务
3 systemctl restart docker重启docker服务
4 systemctl status docker查看docker服务状态
5 systemctl enabled docker开机自启docker服务
镜像命令
1查找本地镜像,docker images。
他查的其实是你现在运行的软件的表(表头有repository(软件名)tag(版本,如果不指定版本默认latest最新版)images ID(标识,卸载可能用的到)created(创建时间)size(软件大小))。
2,docker search Redis。(搜索Redis镜像,需要啥输入啥)
搜完会有列表,表头有(name(全名)description(描述、介绍)stars()official(是否是官方维护的,一般选用官方的)automated())
3,拉取(也就是下载)镜像。
docker pull Redis:版本号。(拉取Redis镜像,需要啥写啥名。不值得版本号默认latest最新版)
小技巧,如果不确定要什么版本,去docker官网(正在上传…重新上传取消hub.docker.com)直接搜索需要的软件名,然后选择你想要服务的对应型号(最好下载官方认证的型号)进去下拉就有版本介绍,选一个就行。
4,卸载镜像(软件)docker rmi ID(此ID就是命令1查出的image ID)
但是果然同软件版本相同装了两个(比如一个指定版本5,但一个不指定默认最新latest,但最新的就是版本5),他们ID是一样的,无法通过ID卸载,就通过名字加版本号卸载。
比如Redis,就是docker rmi Redis:5(这就是卸载指定版本五的)
docker rmi Redis:latest(这就是卸载未指定版本,默认latest的)
小技巧,如果想全部删除镜像(软件)要一个一个输入id很麻烦。可以通过docker images _q来一键只列出所有ID。再追加一下,通过docker rmi 、docker images -q`来一键删除。
容器命令
主要就是如何根据镜像创建并且操作容器。先查所有镜像,可以根据各种镜像创建更多的容器,容器里有这个镜像的完整环境,拿起来就能跑
1创建容器。(创完直接进容器)
docker run —i(—i代表容器一直运行)—t(分配一个终端)——名字(两个杠) 镜像名+版本 后面可在跟/bin/bash
小技巧,退出容器就是exit。
用—it命令创建的容器特点,创建完自动进入容器,退出自动关闭
2,查看当前正在运行的容器
docker ps(用—it命令创建的容器退出自动关闭所以会查不到)—a(历史容器,关闭,没关闭的都能查到)查完会出表,表头是(container ID(于进入容器的输入框前面那段名字是一样的)image(根据的镜像)command(创建时间)status(状态退出啊运行之类的)names(创建时的名字)
所以—it创建容器是不好的。
还有另一种创建容器的方法。—id
大概和—it一样,只有d与t之别
docker run —id(—d后台运行容器。不会立即进入容器,需要特定命令才能进,退出也不会自动关闭) ——name=容器名字 镜像名字:版本
—id创建的容器可直接用ps查。
3,进入容器命令。
docker exec —it 容器名字 /bin/bash。
4,停止容器
docker stop 容器名。
5,启动容器
docker start 容器名
6,删除容器
docker rm 容器名。
7,查看容器信息
docker inspect 容器名