如何在ELK中升级elasticsearch Docker 图片
How to upgrade elasticsearch in ELK Docker Image
我使用以下命令在 Linux 服务器上安装了 elk docker 映像:
sudo docker pull sebp/elk
这将拉取最新版本的 elk docker 镜像,即 7.8.0,以及堆栈中的每个服务(elasticsearch
、logstash
和 kibana
) 也有版本 7.8.0.
出于安全原因,我需要将 elasticsearch
升级到 7.9.0。如何在继续使用 sebp/elk
docker 图像的同时执行此操作?
Elk 打包并运行s 所有 3 项服务并默认链接它们。使用此设置,您不能仅拆分和升级 elasticsearch。
我建议您 运行 使用 docker-compose 独立地使用所有三个服务。使每个服务都能有您选择的图像。
示例docker-compose供您参考:
version: '3.2'
services:
elasticsearch:
image: IMAGE_GOES_HERE
volumes:
- type: bind
source: ./elasticsearch/config/elasticsearch.yml
target: /usr/share/elasticsearch/config/elasticsearch.yml
read_only: true
- type: volume
source: elasticsearch
target: /usr/share/elasticsearch/data
ports:
- "9200:9200"
- "9300:9300"
environment:
ES_JAVA_OPTS: "-Xmx256m -Xms256m"
ELASTIC_PASSWORD: changeme
# Use single node discovery in order to disable production mode and avoid bootstrap checks
# see https://www.elastic.co/guide/en/elasticsearch/reference/current/bootstrap-checks.html
discovery.type: single-node
networks:
- elk
logstash:
image: IMAGE_GOES_HERE
volumes:
- type: bind
source: ./logstash/config/logstash.yml
target: /usr/share/logstash/config/logstash.yml
read_only: true
- type: bind
source: ./logstash/pipeline
target: /usr/share/logstash/pipeline
read_only: true
ports:
- "5000:5000/tcp"
- "5000:5000/udp"
- "9600:9600"
environment:
LS_JAVA_OPTS: "-Xmx256m -Xms256m"
networks:
- elk
depends_on:
- elasticsearch
kibana:
image: IMAGE_GOES_HERE
volumes:
- type: bind
source: ./kibana/config/kibana.yml
target: /usr/share/kibana/config/kibana.yml
read_only: true
ports:
- "5601:5601"
networks:
- elk
depends_on:
- elasticsearch
networks:
elk:
driver: bridge
volumes:
elasticsearch:
我使用以下命令在 Linux 服务器上安装了 elk docker 映像:
sudo docker pull sebp/elk
这将拉取最新版本的 elk docker 镜像,即 7.8.0,以及堆栈中的每个服务(elasticsearch
、logstash
和 kibana
) 也有版本 7.8.0.
出于安全原因,我需要将 elasticsearch
升级到 7.9.0。如何在继续使用 sebp/elk
docker 图像的同时执行此操作?
Elk 打包并运行s 所有 3 项服务并默认链接它们。使用此设置,您不能仅拆分和升级 elasticsearch。
我建议您 运行 使用 docker-compose 独立地使用所有三个服务。使每个服务都能有您选择的图像。
示例docker-compose供您参考:
version: '3.2'
services:
elasticsearch:
image: IMAGE_GOES_HERE
volumes:
- type: bind
source: ./elasticsearch/config/elasticsearch.yml
target: /usr/share/elasticsearch/config/elasticsearch.yml
read_only: true
- type: volume
source: elasticsearch
target: /usr/share/elasticsearch/data
ports:
- "9200:9200"
- "9300:9300"
environment:
ES_JAVA_OPTS: "-Xmx256m -Xms256m"
ELASTIC_PASSWORD: changeme
# Use single node discovery in order to disable production mode and avoid bootstrap checks
# see https://www.elastic.co/guide/en/elasticsearch/reference/current/bootstrap-checks.html
discovery.type: single-node
networks:
- elk
logstash:
image: IMAGE_GOES_HERE
volumes:
- type: bind
source: ./logstash/config/logstash.yml
target: /usr/share/logstash/config/logstash.yml
read_only: true
- type: bind
source: ./logstash/pipeline
target: /usr/share/logstash/pipeline
read_only: true
ports:
- "5000:5000/tcp"
- "5000:5000/udp"
- "9600:9600"
environment:
LS_JAVA_OPTS: "-Xmx256m -Xms256m"
networks:
- elk
depends_on:
- elasticsearch
kibana:
image: IMAGE_GOES_HERE
volumes:
- type: bind
source: ./kibana/config/kibana.yml
target: /usr/share/kibana/config/kibana.yml
read_only: true
ports:
- "5601:5601"
networks:
- elk
depends_on:
- elasticsearch
networks:
elk:
driver: bridge
volumes:
elasticsearch: