docker常见操作(基本命令和注意事项)

docker

名词解释
docker仓库:如果没有配置私人仓库,一般指的是docker官方指定的仓库,这个和github一样。

docker加速器:由于服务器在国外,为了提高访问速度,可以使用docker镜像加速服务(如阿里云的镜像加速服务),这个类似于换源

docker镜像:docker pull <镜像:版本> 后,使用docker images所查询到的结果。在作用上,他相当于模板/CD/iso文件,容器就是依据镜像创建的。

docker容器:实际上提供服务的实体,创建一个容器,就代表开启了一个服务。

docker层级:对于一个一般性的docker容器,他的内部是一种多层结构,如最底部的os层,os层上的服务···等等

配置文件:/etc/docker/daemon.json,这里可以配置docker加速器,没有此文件,需要手动创建,创建后此文件不能为空,否则报错,dockerd后台服务无法启动。

docker管理

常见命令及命令参数

docker version

查看当前docker服务是否正常

docker pull <镜像:tag>

从docker仓库拉取镜像到本地

docker push <镜像:tag>

把本地的镜像推送到docker仓库

docker run  <镜像ID>

通过镜像创建容器,并自动运行
参数:
-it 可选参数
-v :目录挂载(映射):可选,推荐
-d:容器以后台形式运行:必选
-p:端口绑定(映射):必选
–name:手动指定容器别名;可选、推荐
-h:指定容器的主机名;可选

docker exec <镜像ID>

和正在运行的容器建立连接,以bash形式交互
参数:
-it
常见命令形式:

docker exec -it <镜像ID>  /bin/bash  推荐使用
docker exec -it <镜像ID>  sh 不推荐
docker ps <容器ID>

查看已创建的容器;-a参数可以显示所有容器

docker search <镜像:tag>

在docker仓库查找系统镜像

docker start <容器ID>

启动已经停止的容器,它相当于systemctl start

docker stop <容器ID>

停止正在运行的容器,与docker pause不同,它相当于systemctl stop,而pause相当于系统快照(冻结状态)。

docker rm <容器ID>

从本地移除一个容器(可以使用name,如tomcat8。但推荐使用ID);此处可以同时移除多个容器,ID以空格隔开;不能移除正在运行的容器。

docker rmi <镜像ID>

从本地移除一个镜像(注意不要使用name,如tomcat。而应该使用ID);此处可以同时移除多个镜像,ID以空格隔开;不能移除还有容器存在的容器。

docker images

显示所有镜像(本地)

docker logs <容器ID>

查看容器的日志,通常用于查看容器异常停止的原因,一般配合-f参数

docker pause <容器ID>

冻结正在运行的容器,相当于系统快照(冻结状态)。

docker -h

docker帮助命令

注意事项

报错及处理
Q:使用docker run创建docker容器并启动后,查看docker ps ,并无容器,使用docker ps -a ,发现容器并且退出码为exit(1):
A:这说明,在创建容器的过程中出错,常见的错误原因有:拉取的镜像不适合当前系统版本,如32位 OS使用了64位的镜像

Q:无法拉取官方的镜像,显示no matching manifest for unknown in the manifest list entries
A:这个只在树莓派中遇到过,这是由于官方没有准备适合树莓派的镜像,一般这个时候,都是由于你的系统是32位系统,armV71

Q,依据系统镜像创建的容器,创建后,错误码为exit(0)
A:这时可能是在创建容器时没有指定脚本执行程序,导致容器自动退出,这在创建系统容器时最为常见。

与github对比
docker和github很像,docker中的镜像就像github上的项目:允许pull,push;而且每个镜像都有star;同一类镜像也分官方发布的和私人改版的;浏览下载速度时快时慢;

例子

使用docker安装tomcat服务

安装docker服务

apt-get install docker

检查dockerd是否启动

docker version

此时需要正常显示client和server两个的内容

查看tomcat版本

docker search tomcat

选取指定的tomcat镜像并进行拉取

docker pull <tomcat:latest>

依据拉取到的tomcat镜像创建容器

docker run -d -it -p 8080:8080 <此处为tomcat的镜像ID> 

这个命令 没有设置挂载目录和设定容器名字

查看容器是否创建成功

docker ps

如果没有显示,说明失败了,可以用docker ps -a 查看到失败、停止的镜像,使用docker logs -f <容器ID> 查看容器日志,获取为什么启动失败

访问tomcat服务

localhost://127.0.0.1:8080/
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值