总结一些日常使用的Docker命令和遇到问题的解决方法,还有ES的一些常用语句,便于提高日常工作中是Docker和ES时提供工效率。


一、Docker常用语句和问题解决

1.1什么是Docker

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口

常用语句

1.2Docker常用命令

1.2.1基础命令

【启动docker】:systemctl start docker

【关闭docker】:systemctl restart docker

【设置随服务启动而自启动】:systemctl enable docker

【查看docker 运行状态】:systemctl status docker

【查看docker 版本号信息】:docker version 和 docker info

【docker帮助命令】:docker --help

例如:查看如何拉取 docker pull --help

1.2.2镜像命令

【查看自己服务器中docker 镜像列表】:docker images

搜索镜像】:docker search 镜像名

【拉取镜像 】:docker pull 镜像名 和 docker pull 镜像名:tag

区别:不加tag拉取的是当前最新版本,加tag则拉取指定的版本

【运行镜像 】:docker run 镜像名

【删除镜像】:

#删除一个 :docker rmi -f 镜像名/镜像ID

#删除多个 其镜像ID或镜像用用空格隔开即可

docker rmi -f 镜像名/镜像ID 镜像名/镜像ID 镜像名/镜像ID

#删除全部镜像 -a 意思为显示全部, -q 意思为只显示ID

docker rmi -f $(docker images -aq)

【保存镜像】:docker save 镜像名/镜像ID -o 镜像保存在哪个位置与名字

【加载镜像】:docker load -i 镜像保存文件位置

任何装 docker 的地方加载镜像保存文件,使其恢复为一个镜像

【镜像标签】:docker tag 源镜像名:TAG 想要生成新的镜像名:新的TAG

1.2.3容器命令

【查看正在运行容器列表】:docker ps

查看所有容器 -包含正在运行 和已停止的】:docker ps -a

进入容器】:docker exec -it 容器名/容器ID /bin/bash

【删除容器】:

#删除一个容器

docker rm -f 容器名/容器ID

#删除多个容器 空格隔开要删除的容器名或容器ID

docker rm -f 容器名/容器ID 容器名/容器ID 容器名/容器ID

#删除全部容器

docker rm -f $(dockerps -aq)

【容器端口与服务器端口映射】:-p 宿主机端口:容器端口

【重启容器】:docker restart 容器ID/容器名
【启动容器】:docker start 容器ID/容器名

【停止容器】:docker stop 容器ID/容器名

【kill 容器】:docker kill 容器ID/容器名

【查看容器日志】:docker logs -f --tail=要查看末尾多少行 默认all 容器ID

【更换容器名】:docker rename 容器ID/容器名 新容器名

1.2.4其他命令

查询占用空间前十的文件目录】:du -lh --max-depth=1

【查看docker日志的大小】:

find /data/docker/lib/docker/containers/ -name -json.log\nsudo du -d1 -h /var/lib/docker/containers//* | sort -h\ES

【清空Docker日志】:sudo sh -c "cat /dev/null > ${log_file}"

1.3问题和解决方法

1.3.1【docker空间不足】

docker: failed to register layer: devnapper: Thin Pool has 311442 free data blocks which is less than nininum required 327680 free data blocks. Create nore free space in thin pool or use dn.nin free space option to change behavior.

【检测容器空间】:

docker info | grep Data

解决办法:

vim /usr/lib/systemd/system/docker.service 文件

【重启docker生效】:

systemctl stop docker

systemctl daemon-reload

systemctl start docker

1.3.2【docker pull拉镜像慢】

解决办法很简单:修改mirror,换成国内mirror

1.3.3【docker无法删除容器】

找到 /var/lib/docker/containers/ 下的对应容器的文件夹,将其删除,然后重启一下 dockerd 即可。我们会发现,之前无法删除的容器没有了。

1.3.4【Docker 删除镜像报错】

出现这个原因主要是因为 TAG,即存在其他镜像引用了这个镜像。这里我们可以使用如下命令查看对应镜像文件的依赖关系,然后根据对应 TAG 来删除镜像

# 查询依赖 - image_id表示镜像名称

$ docker image inspect --format='{{.RepoTags}} {{.Id}} {{.Parent}}' $(docker image ls -q --filter since=<image_id>)

# 根据TAG删除镜像

$ docker rmi -f c565xxxxc87f

二、ES常用的语句

2.1什么是ES

ES全称是Elasticsearch是一个基于Lucene库的搜索引擎。提供分布式、支持多租户的全文搜索引擎,具有HTTP Web接口和无模式JSON文档。Elasticsearch是用Java开发的,并在Apache许可证下作为开源软件发布。

2.2ES可正常使用的客户端工具

由于ES的一些版本需要达到ES的白金版级别部分ES客户端才能可视化对ES库进行操作,以下工具可以满足一定条件的ES操作能力

(1)常用的客户端工具网页版【kibana】

(2)接口测试工具例如postman、aipfox等(注:这种需要对ES库表的字段结构非常了解)

(3)可视化数据库工具DataGrip下安装的插件【EDQL】和【Cap Elasticsearch Cluster】

2.3ES常用语句

这里以接口工具【aipfox】查询举例,使用接口工具请求一定要配置请求头

2.3.1ES查询

GET http://ES部署的服务器地址:端口号/索引名/_search

【查询表内所有数据】

{"from": 0,"size": 10,"query": {"match_all": {}}
}

【按条件查询】--单一条件

{"track_total_hits": true,"query": {"match": {"callRecord.taskName": "任务测试07011517"}}
}

【按条件查询】--单条件and和or

{"from":1,"size":5,"query": {"match": {"smsContent": {"query": "java 学习","operator": "or" //或者关系"minimum_should_match": 2}}}
}{"query": {"match": {"smsContent": {"query": "java 学习","operator": "and" //并且关系}}}
}

【按条件查询】--多条件查询

{"query": {"bool": {"must": [{"match_phrase": {"task.taskName": "海尔_机器人任务_20220711_重呼扣费_004"}},{"match_phrase": {"task.taskStatus": 2}},{"match_phrase": {"task.callRound": 1}}]}}
}

2.3.2ES修改

POST http://ES部署的服务器地址:端口号/索引名/_update_by_query

【根据条件修改数据】--修改单个数据

{"script": {"source": "ctx._source['costTime']='2022-06-30 11:31:38'"},"query": {"bool": {"must": [{"match_phrase": {"companyId": 1194}},{"match_phrase": {"costTime": "2022-07-13 16:41:28"}}]}}
}

【根据条件修改数据】--修改多个数据

{"script": {"inline": "ctx._source['billDate']='2022-02';ctx._source['statisticsTime']='2022-03-04 15:40:00';ctx._source['monthlyCostId']='2022-02_1194'"},"query": {"bool": {"must": [{"match": {"companyId": "1194"}}]}}
}

2.3.3ES插入

POST http://ES部署的服务器地址:端口号/索引名/_bulk

【多条插入】(注:插入数据要注意,上条数据换下条数据中间要有换行,否则执行数据插入的时候会报错)

{"index": {"_id": "2022-05_1194"}}
{"monthlyCostId": "2022-05_1194","companyId": 1194,"statisticsTime": "2022-06-06 11:00:00","billDate": "2022-05","costMoney": 6.9,"robotCost": 6.9,"seatsCost": 0.0,"notifyCost": 0.0,"messageCost": 0.0}{"index": {"_id": "2022-04_1194"}}
{"monthlyCostId": "2022-04_1194","companyId": 1194,"statisticsTime": "2022-05-06 11:00:00","billDate": "2022-04","costMoney": 1116.9,"robotCost": 16.9,"seatsCost": 888.888,"notifyCost": 777.77,"messageCost": 66666.66}{"index": {"_id": "2022-03_1194"}}
{"monthlyCostId": "2022-03_1194","companyId": 1194,"statisticsTime": "2022-04-06 11:00:00","billDate": "2022-03","costMoney": 1116.9,"robotCost": 16.9,"seatsCost": 888.888,"notifyCost": 777.77,"messageCost": 66666.66}

2.3.4ES删除

(1)删除指定id的数据

DELETE http://ES部署的服务器地址:端口号/索引名/_doc/要删除数据的ID

(2)删除索引

DELETE http://ES部署的服务器地址:端口号/索引名

(2)根据条件删除数据

POST /spouse/female/_delete_by_query
{"query":{"match":{"age":24}}
}

注:以上分享展示的内容和部分图片来源于网络截取

Docker命令和问题解决、ES常用操作相关推荐

  1. mac上mysql如何使用教程_mac命令终端的mysql常用操作

    首先在mac下安装mysql,这里就不多做介绍了,下载镜像完成之后一步一步操作就是,安装完成之后或默认分配一个用户名和密码,以弹框的形式给到你: user&password.png 用户名默认 ...

  2. Docker常用操作帅哥专供版

    没错,这里的帅哥指的就是我自己 Docker常用命令 Docker中文资源 Docker中文网站:https://www.docker-cn.com/ Docker安装手册:https://docs. ...

  3. 这54个docker命令!你必须懂!

    Docker是一个不断发展的系统,开发人员积极改进使用和性能.所以命令总是在变化.docker一些老的命令经常被弃用,并被新的或更有效的命令取代.您可以使用帮助选项检查Docker安装上的最新可用命令 ...

  4. docker 一起性重启所有镜像_docker系列四之docker镜像与容器的常用命令

    docker镜像与容器的常用命令 一.概述 docker的镜像于容器是docker中两个至关重要的概念,首先给各位读者解释一下笔者对于这两个概念的理解.镜像,我们从字面意思上看,镜子里成像,我们人站在 ...

  5. Docker系列(二)-Dcoker的常用命令

    文章目录 帮助命令 镜像命令 查看本机镜像 搜索镜像 下载镜像 删除镜像 查看镜像的历史 容器命令 启动容器 查看运行容器 退出容器 删除容器 启动和停止容器 常用的其他命令 后台启动容器 查看日志 ...

  6. docker 删除所有未启动的容器_Docker 镜像容器常用操作(让我们用 docker 溜得飞起)...

    推荐阅读: 面试字节跳动三轮凉凉,内推4面终拿下抖音offer(Java后台研发)​zhuanlan.zhihu.com 一线架构师Spring boot 学习笔记:我的成长全记在这份PDF文档里​z ...

  7. es常用curl命令

    [说明]仅记录实验室测试过程,不作为官方文档使用,可能会有很多地方未能验证,因此无法进行技术兜底,需使用方多加验证测试,涉及到高危需走变更.目前测试版本均为651及以前版本,命令样例基于安全模式,如果 ...

  8. Docker常用操作

    输入docker 可以查看Docker的命令用法,输入docker COMMAND --help 查看指定命令详细用法. 镜像常用操作 查找镜像: docker search 关键词 #搜索docke ...

  9. Gluster FS 部署复制卷与常用命令 常见问题解决

    在 liunx 下部署Gluster FS分布式文件系统,以及Gluster FS遇到的一些问题解决,常用命令 概述 Gluster FS 是一个开源分布式文件系统,具有强大的横向扩展能力,可支持数P ...

最新文章

  1. EP936E的IIC
  2. Hadoop示例程序WordCount详解及实例
  3. EMQ学习 ---集群
  4. 有关子矩阵最大累加和的总结
  5. c语言遍历exe的目录,如何用纯C获取一个文件目录。
  6. 计算机组装维护文献,组装计算机论文,关于《计算机组装维护》课程教学相关参考文献资料-免费论文范文...
  7. dw中html颜色的设置颜色代码,Dreamweaver 如何编辑字体大小颜色
  8. Qt文档阅读笔记-QNetworkAccessManager官方解析与实例
  9. CSU 1120 病毒
  10. 小程序模板-评分星星
  11. ACM--素数距离问题
  12. C/C++ 内部收益率
  13. Mac安装brew的四种方法(指定能行)
  14. 错过校招_我们在用户测试中容易错过的事情
  15. window、linux、mac 文件路径禁止字符, 路径长度【全网总结】
  16. 环洋市场调研-2022年全球一次性餐具市场总体规模及应用细分研究报告
  17. Android加速度传感器原理
  18. 网易云发送验证码短信,发送通知短信,java版
  19. [POI2007]TET-Tetris Attack
  20. 错误笔记:JavaWeb:请求的资源[/$%7BpageContext.request.contextPath%7D/login]不可用

热门文章

  1. Linux操作系统介绍(简记)
  2. 【键盘映射】AHK自定义Windows脚本
  3. 深度置信网络预测算法matlab代码_深度学习双色球彩票中的应用研究资料
  4. PSIM免安装的方法附加使用教程
  5. php 海关对接 进口商品_海关179对接联调-在线咨询-210112
  6. 一个手机只能连接一个热点吗_一个手机能登两个微信吗
  7. Maven仓库的分类及优先级
  8. linux安装升级git
  9. mysql hy000 1030_解决MySQL数据库SQL Error:1030, SQLState: HY000,Got error 28 from storage engine...
  10. java remoteobject_RemoteObject使用 | 学步园