docker自定义镜像并使用

写在前面

本文看下如何自定义镜像。

ik包从这里 下载。

1:自定义带有ik的es镜像

先看下目录结构:

/opt/program/mychinese
[root@localhost mychinese]# ll
total 16
-rw-r--r-- 1 root root 1153 Feb  5 04:18 docker-compose.yaml
-rw-rw-r-- 1 elk  elk   291 Feb  5 04:17 Dockerfile
drwxr-xr-x 3 root root  243 Feb  5 03:27 ik710

ik710目录就是ik的解压内容,后续回安装到es,直接拷贝到es的plugins目录就行。

Dockerfile内容:

FROM docker.elastic.co/elasticsearch/elasticsearch:7.1.0
RUN mkdir /usr/share/elasticsearch/plugins/ik710
#RUN cd /usr/share/elasticsearch/plugins/ik710
ADD ik710 /usr/share/elasticsearch/plugins/ik710
# CMD echo "es will start!!!"
# CMD ["/usr/share/elasticsearch/bin/elasticsearch", "-d"]

接着就可以构建镜像了:

docker build -t mychinese:1.2 .

[root@localhost mychinese]# docker images
REPOSITORY                                      TAG                 IMAGE ID            CREATED             SIZE
mychinese                                       1.2                 d0aec608ff4f        12 minutes ago      904 MB
...

接着就可以使用docker-compose 启动了,内容如下:

version: '2.2'
services:
  elasticsearch:
    image: mychinese:1.2
    container_name: es7_011
    environment:
      - cluster.name=geektime
      - node.name=es7_011
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
      - discovery.seed_hosts=es7_011,es7_012
      - cluster.initial_master_nodes=es7_011,es7_012
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - es7data1:/usr/share/elasticsearch/data
    ports:
      - 9220:9200
    networks:
      - es7net
  elasticsearch2:
    image: mychinese:1.2
    container_name: es7_012
    environment:
      - cluster.name=geektime
      - node.name=es7_012
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
      - discovery.seed_hosts=es7_011,es7_012
      - cluster.initial_master_nodes=es7_011,es7_012
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - es7data2:/usr/share/elasticsearch/data
    networks:
      - es7net


volumes:
  es7data1:
    driver: local
  es7data2:
    driver: local

networks:
  es7net:
    driver: bridge

启动:

[root@localhost mychinese]# docker-compose up 
Creating es7_011 ... done
Creating es7_012 ... done
Attaching to es7_012, es7_011
es7_011           | {"type": "server", "timestamp": "2024-02-05T09:32:29,486+0000", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "geektime", "node.name": "es7_011",  "message": "loaded plugin [analysis-ik]"  } # 这里可以看到加载analysis-ik插件了
...

查看:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/374041.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Web课程学习笔记--CSS选择器的分类

CSS 选择器的分类 基本规则 通过 CSS 可以向文档中的一组元素类型应用某些规则 利用 CSS,可以创建易于修改和编辑的规则,且能很容易地将其应用到定义的所有文本元素 规则结构 每个规则都有两个基本部分:选择器和声明块;声明块由一…

06-Java适配器模式 ( Adapter Pattern )

原型模式 摘要实现范例 适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁 适配器模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能 举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内…

2、ChatGPT 在数据科学中的应用

ChatGPT 在数据科学中的应用 ChatGPT 可以成为数据科学家的绝佳工具。以下是我所了解到的关于它擅长的地方和不那么擅长的地方。 我从使用 ChatGPT 中学到了一个教训。它在数据科学中非常有帮助,但你必须仔细检查它输出的所有内容。它非常适合某些任务,并且可以非常快速准确…

Linux Rootkit实验|01 基于修改系统调用表的Hook

Linux Rootkit实验|01 基于修改系统调用表的Hook 文章目录 Linux Rootkit实验|01 基于修改系统调用表的Hook实验说明实验环境实验过程一 基于修改sys_call_table的系统调用挂钩1 寻找sys_call_table内存地址2 关掉写保护3 修改sys_call_table 二 基于系统…

告别mPDF迎来TCPDF和中文打印遇到的问题

mPDF是一个用PHP编写的开源PDF生成库。它最初由Claus Holler创建,于2004年发布。原来用开源软件打印中文没有问题,最近发现新的软件包中mPDF被TCPDF代替了,当然如果只用西文的PDF是没有发现问题,但要打印中文就有点抓瞎了如图1&am…

【python数据分析基础】—dataframe中index的相关操作(添加、修改index的列名、修改index索引值等)

文章目录 前言一、添加、修改index的列名二、修改index索引值 前言 本文主要讲dataframe结构中index的相关操作,index相当于是数据表的行。 一、添加、修改index的列名 新建一个dataframe表,我们可以自定义index的值,如下: imp…

数据结构高级算法

目录 最小生成树 Kruskal(克鲁斯卡尔)(以边为核心) 9) 不相交集合(并查集合) 基础 Union By Size 图-相关题目 4.2 Greedy Algorithm 1) 贪心例子 Dijkstra Prim Kruskal 最优解(零钱兑换)- 穷举法 Leetcode 322 最优解(零钱兑换)- 贪心法 Leetcode 322 3)…

html5 audio video

DOMException: play() failed because the user didn‘t interact with the document first.-CSDN博客 不可用: 可用: Google Chrome Close AutoUpdate-CSDN博客

基于CNN+LSTM深度学习网络的时间序列预测matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 卷积神经网络(CNN) 4.2 长短时记忆网络(LSTM) 4.3 CNNLSTM网络结构 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 MA…

2020年通信工程师初级 综合能力 真题

文章目录 第1章 通信职业道德,1-4第2章 法律法规,5-16第3章 计算机应用基础,第5章 现代通信网,38英语题,91 第1章 通信职业道德,1-4 1、职业道德在形式上具有()特点。 A.一致性 B.统一性 C.多样性 D.一般性…

PHP实现DESede/ECB/PKCS5Padding加密算法兼容Java SHA1PRNG

这里写自定义目录标题 背景JAVA代码解决思路PHP解密 背景 公司PHP开发对接一个Java项目接口,接口返回数据有用DESede/ECB/PKCS5Padding加密,并且key也使用了SHA1PRNG加密了,网上找了各种办法都不能解密,耗了一两天的时间&#xf…

【UE】游戏运行流程的简单理解

流程图 官方的游戏流程图: 一般顺序为初始化引擎、创建并初始化 GameInstance、加载关卡,最后开始游戏。 总的来说就是: 开始游戏-》游戏实例-》关卡-》游戏模式-》玩家控制器-》Pawn、玩家状态、HUD、UMG(可有可无) …

idea运行程序报错 java 程序包org.junit不存在

在 IntelliJ IDEA 中运行程序时遇到错误提示:“java: 程序包org.junit不存在”,针对这一问题,我们可以考虑以下三步来解决: 第一步:检查JUnit依赖 尽管现代项目创建时通常会默认引入JUnit依赖,但仍需检查…

postman 文档、导出json脚本 导出响应数据 response ,showdoc导入postman json脚本 导出为文档word或markdown

保存、补全尽可能多的数据、描述 保存响应数据 Response:(如果导出接口数据,会同步导出响应数据) 请求接口后,点击下方 Save as Example 可以保存响应数据到本地(会在左侧接口下新增一个e.g. 文件用来保…

仅一个月获推荐170w+,视频号近期爆火的秘诀是什么?

为了保证良好的创作环境,视频号的原创标准在1月做了新调整, 视频时长小于5秒则不能声明为原创 ,纯图片轮播也不能声明为原创,只有持续输出优质内容的账号才能显示原创标识及原创保护功能,这样的改动也给了不少创作者…

基于Vue的移动端UI框架整理

一、Vant 官方地址:https://youzan.github.io/vant/#/zh-CN/ 简介:有赞公司开发。 特性:60 高质量组件、90% 单元测试覆盖率、完善的中英文文档和示例、支持按需引入、支持主题定制、支持国际化、支持 TS、支持 SSR。 特别说明&#xff1…

Redis 命令大全

文章目录 启动与连接Key(键)相关命令String(字符串)Hash(哈希)List(列表)Set(集合)Sorted Set(有序集合)其他常见命令HyperLogLog&…

Unity类银河恶魔城学习记录3-1 EnemyStateMachine源代码 P47

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili Enemy.cs using System.Collections; using System.Collections.Generic;…

Java 学习和实践笔记(1)

2024年,决定好好学习计算机语言Java. B站上选了这个课程:【整整300集】浙大大佬160小时讲完的Java教程(学习路线Java笔记)零基础,就从今天开始学吧。 在这些语言中,C语言是最基础的语言,绝大多…

抢 React 饭碗!如何在 Vue3 中使用 JSX TSX

首先,恭喜一下 React,再过 4 个月,就达成了两年无更新记录 反观隔壁的 Vue,稳定迭代更新 之前写 React 的时候,最喜欢的是 JSX/TSX 语法,把 HTML 组件当做 JavaScript/TypeScript 代码片段处理 const Ap…