当前位置: 首页 > news >正文

《网站开发实例》pdf下载本地购物平台

《网站开发实例》pdf下载,本地购物平台,在本地搭建多个网站,腾讯企业邮箱登录页面在我们创建 Elasticsearch 进行开发时,最简单的办法就是在本地使用 docker-compose 来一键部署一个 Elasticsearch 集群。有时,特别是在准备测试环境时,开发人员希望从一开始就创建包含一些测试数据的数据库容器。我们可以使用 Logstash 来很…

在我们创建 Elasticsearch 进行开发时,最简单的办法就是在本地使用 docker-compose 来一键部署一个 Elasticsearch 集群。有时,特别是在准备测试环境时,开发人员希望从一开始就创建包含一些测试数据的数据库容器。我们可以使用 Logstash 来很方便地把数据写入到 Elasticsearch 中。

在我之前的文章 “Elasticsearch:使用 Docker-Compose 启动单节点 Elastic Stack”,我有讲到这个方法。在今天的文章中,我们通过另外一种方法来实现。你可以在地址 https://github.com/liu-xiao-guo/elasitcPreloadData 下载所有的代码。

首先,我们项目的根目录下创建一个  .env 的文件。

.env

ELASTIC_PASSWORD=DEFAULT
STACK_VERSION=7.17.14
ES_PORT=9203

接下来创建 docker-compose.yaml 配置文件:

docker-compose.yaml

version: "2.2"
services:es01:image: docker.elastic.co/elasticsearch/elasticsearch:${STACK_VERSION}ports:- ${ES_PORT}:9200environment:- node.name=es01- cluster.initial_master_nodes=es01- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}- bootstrap.memory_lock=true- xpack.security.enabled=truehealthcheck:test:["CMD-SHELL","curl -s -k http://localhost:9200",]interval: 10stimeout: 10sretries: 120logstash:build:context: logstash/dockerfile: Dockerfiledepends_on:es01:condition: service_healthyenvironment:- ELASTICSEARCH_URL=http://es01:9200- ELASTICSEARCH_USERNAME=elastic- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}- XPACK_MONITORING_ENABLED=false

有几点需要注意:

  • 使用 xpack.security.enabled 为 Elasticsearch 启用用户名/密码身份验证。 如果不需要,请将其删除,以便默认值为 false。
  • 健康检查只是为了得到 9200 端口的响应
  • Logstash 将从 Docker 文件构建

Logstash 的 Dockerfile:

logstash/Dockerfile

FROM docker.elastic.co/logstash/logstash:7.17.14COPY importData.conf /usr/share/logstash/pipeline
RUN mkdir /usr/share/logstash/data-test/
COPY testdata.json /usr/share/logstash/data-test/
COPY --chmod=0755 progress.sh /tmp
#Install exec plugin to run shell script in Logstash pipeline
RUN bin/logstash-plugin install logstash-output-execENTRYPOINT ["/usr/local/bin/docker-entrypoint"]

JSON 数据文件应将每个文档包含为一行,如下所示:

{"name": "Bobbie", "emailaddress": "Bob@mail2u.org", "address": "1186 Neil Court", "country": "UK", "birthdate": "1995-10-15T01:00:00Z",}
{"name": "Helen", "emailaddress": "Hele@mail.ru", "address": "839 Federal Ridge", "country": "Hungary", "birthdate": "1985-11-03T01:00:00Z"}

要在 Logstash 中运行的管道配置文件应定义输入文件(我们的 JSON 数据测试文件)和输出(插入 Elasticsearch 并运行自定义脚本):

input {file {path => "/usr/share/logstash/data-test/testdata.json"mode => "read"codec => json { }exit_after_read => truetype => "sample"}
}
filter {mutate {remove_field => [ "log", "@timestamp", "event", "@version" ]}
}
output {elasticsearch {hosts => "${ELASTICSEARCH_URL}"index => "test_data"user => "elastic"password => "${ELASTIC_PASSWORD}"ssl_certificate_verification => false}exec {command => "/tmp/progress.sh"}
}

Logstash 旨在成为一种监听连续输入流的服务。 通常停止它是没有意义的,因为新数据无论何时到来都应该通过管道进行处理。 然而在这种情况下,我只想 Logstash 导入我的测试数据,然后停止释放资源。

这是我在导入数据后终止 Logstash 容器的一种 hack:

#!/bin/bashCHECK="$ELASTICSEARCH_URL/test_data/_count"
#Expected data test size is 10 documents
CONDITION="\"count\":10"while [ true ]
do  if curl -u $ELASTICSEARCH_USERNAME:$ELASTIC_PASSWORD $CHECK | grep -q "$CONDITION"; then#Kill Logstash service so container would stopkill $(ps aux | grep 'logstash' | awk '{print $2}')breakelseecho "Counting documents from Elasticsearch does not return the expected number. Retrying"sleep 2fi 
done

现在只需 docker-compose up -d ,大约 2 分钟后,Elasticsearch 就会启动并创建索引,其中包含一些文档。

http://www.yayakq.cn/news/782695/

相关文章:

  • 企业网站建设方案文档网站建设所需软件
  • 规范 加强网站建设管理本地搭建的wordpress上传到主机
  • 深圳建设工程项目网站广东营销型网站建设多少钱
  • 做酒店网站有哪些目录网站精美排版代码
  • 教育集团网站设计策划书北京壹零零壹网站建设
  • 有特效的网站商贸有限公司取名免费
  • 网站公众号小程序开发公司制作地图的网站
  • 做外贸哪里网站比较好服装网站建设的需求
  • 美团网站开发合作商专门做饥饿营销的网站
  • 青岛专业做网站优化普通电脑怎么建设网站
  • 十堰优化网站哪家好模板网站
  • 西安网站制作开发微信管理系统
  • 长沙营销型网站设计网站突然掉排名
  • 专业做网站方案ppt公司网站功能性建设有哪些
  • 珠海在线网站制作公司产品设计论文
  • 怎么删除建站网站程序wordpress 首页乱码
  • 北京通网站建设价格北极星招聘网
  • 企业网站怎么做html青岛网站设计皆挺青岛博采网络
  • 电子商务网站软件建设的核心是什么国内旅游网站排行榜
  • 电影网站做流量吗多渠道分销系统
  • 我想做个网站网站数据中心的建设
  • 烟台外贸网站建设wordpress文章在哪里
  • 建外贸网站推广在线网站备份
  • 网站规划设计书wordpress标签搜索
  • 怎么做网站才能吸引人做网站的工具
  • phpmysql网站开发笔记陕西省城乡建设厅官方网站
  • 专业做电脑系统下载网站好行列资讯工程造价信息网
  • 郑州房产网新房seo黑帽是什么
  • 新注册网站最新网络营销方式有哪些
  • phpcms网站源码邢台信息港123招聘