docker中设置elasticsearch7 安装IK分词

  1. 自定义dockerfile
FROM docker.elastic.co/elasticsearch/elasticsearch:7.14.0
RUN mkdir /usr/share/elasticsearch/plugins/ik
WORKDIR /usr/share/elasticsearch/plugins/ik
COPY elasticsearch-analysis-ik-7.14.0.zip ./
RUN unzip elasticsearch-analysis-ik-7.14.0.zip

  1. 制作镜像
sudo docker build . -t elasticsearchik:v1.1
  1. 在/home/ellis/k8s/elasticsearch/elasticsearchplugins/ 创建ik文件夹,并将运行
    unzip elasticsearch-analysis-ik-7.14.0.zip
  2. k8s部署
kind: PersistentVolume
apiVersion: v1
metadata:
  name: elasticsearch-pv-volume
  namespace: logging
  labels:
    type: local
    app: elasticsearch
spec:
  #storageClassName: manual
  capacity:
    storage: 5Gi
  accessModes:
    - ReadWriteMany
  hostPath:
    path: "/home/ellis/k8s/elasticsearch/elasticsearchdata/"
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: elasticsearch-pv-claim
  namespace: logging
  labels:
    app: elasticsearch
spec:
  storageClassName: ""
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 5Gi

---
kind: PersistentVolume
apiVersion: v1
metadata:
  name: elasticsearch-pv-volume-plugins
  namespace: logging
  labels:
    type: local
    app: elasticsearch-plugins
spec:
  #storageClassName: manual
  capacity:
    storage: 5Gi
  accessModes:
    - ReadWriteMany
  hostPath:
    path: "/home/ellis/k8s/elasticsearch/elasticsearchplugins/"
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: elasticsearch-pv-claim-plugins
  namespace: logging
  labels:
    app: elasticsearch-plugins
spec:
  storageClassName: ""
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 5Gi

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: elasticsearch
  namespace: logging
spec:
  replicas: 1 
  selector:
    matchLabels:
      component: elasticsearch
  template:
    metadata:
      labels:
        component: elasticsearch
    spec:
      containers:
        - name: elasticsearch
          image: elliselasticsearch:v1.1
          imagePullPolicy: IfNotPresent
          env:
            - name: discovery.type
              value: single-node 
          ports:
            - containerPort: 9200
              name: http
              protocol: TCP
          volumeMounts:
            - mountPath: /usr/share/elasticsearch/plugins/
              name: elasticsearchplugin
            - mountPath: /usr/share/elasticsearch/data
              name: elasticsearch
            - name: elasticsearch-config
              mountPath: /usr/share/elasticsearch/config/elasticsearch.yml
              subPath: elasticsearch.yml
          resources:
            limits:
              cpu: 500m
              memory: 2Gi
            requests:
              cpu: 500m
              memory: 2Gi
      volumes:
        - name: elasticsearch
          persistentVolumeClaim:
            claimName: elasticsearch-pv-claim
        - name: elasticsearchplugin
          persistentVolumeClaim:
            claimName: elasticsearch-pv-claim-plugins
        - name: elasticsearch-config
          configMap:
            name: elasticsearch-config
---
apiVersion: v1
kind: Service
metadata:
  name: elasticsearch
  namespace: logging
  labels:
    service: elasticsearch
spec:
  type: NodePort
  selector:
    component: elasticsearch
  ports:
    - port: 9200
      targetPort: 9200
      nodePort: 31200

---
apiVersion: v1
kind: Service
metadata:
  name: elasticsearch
  namespace: logging
  labels:
    service: elasticsearch
spec:
  type: NodePort
  selector:
    component: elasticsearch
  ports:
    - port: 9200
      targetPort: 9200
      nodePort: 31200

参考
https://blog.csdn.net/weixin_43632687/article/details/121032943

https://www.elastic.co/guide/en/cloud-on-k8s/master/k8s-custom-images.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值