https://github.com/jmb12686/docker-elasticsearch
Multi-architecture (arm, x86) Docker image for Elasticsearch
https://github.com/jmb12686/docker-elasticsearch
arm armv6 armv7 buildx docker-elasticsearch docker-swarm elasticsearch multi-arch-images multiarch raspberry-pi
Last synced: about 1 month ago
JSON representation
Multi-architecture (arm, x86) Docker image for Elasticsearch
- Host: GitHub
- URL: https://github.com/jmb12686/docker-elasticsearch
- Owner: jmb12686
- Created: 2020-01-17T15:56:54.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-12-07T10:31:05.000Z (almost 4 years ago)
- Last Synced: 2025-04-02T19:41:17.748Z (6 months ago)
- Topics: arm, armv6, armv7, buildx, docker-elasticsearch, docker-swarm, elasticsearch, multi-arch-images, multiarch, raspberry-pi
- Language: Dockerfile
- Size: 28.3 KB
- Stars: 17
- Watchers: 2
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# docker-elasticsearch
Containerized, multiarch version of [Elasticsearch](https://github.com/elastic/elasticsearch). Designed to be usable within x86-64, armv6, and armv7 based Docker Swarm clusters. Compatible with all Raspberry Pi models (armv6 + armv7).
## Usage
Run on a single Docker engine node:
```bash
sudo docker run --rm -e "ES_JAVA_OPTS=-Xmx256m -Xms256m" -e "discovery.type=single-node" -v ${PWD}/config/example/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml jmb12686/elasticsearch
```Run with with Compose on Docker Swarm:
```yml
version: "3.7"
services:
elasticsearch:
image: jmb12686/elasticsearch
configs:
- source: elastic_config
target: /usr/share/elasticsearch/config/elasticsearch.yml
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
environment:
ES_JAVA_OPTS: "-Xmx256m -Xms256m"
ELASTIC_PASSWORD: changeme
discovery.type: single-node
networks:
- elk
deploy:
mode: replicated
replicas: 1
resources:
limits:
memory: 1024M
reservations:
memory: 1024M
configs:
elastic_config:
name: elastic_config-${CONFIG_VERSION:-0}
file: ./elasticsearch/config/elasticsearch.yml
networks:
elk:
driver: overlayvolumes:
filebeat: {}
elasticsearch-data: {}
```## How to manually build
Build using `buildx` for multiarchitecture image and manifest v2 support
Setup buildx
```bash
docker buildx create --name multiarchbuilder
docker buildx use multiarchbuilder
docker buildx inspect --bootstrap
[+] Building 0.0s (1/1) FINISHED
=> [internal] booting buildkit 5.7s
=> => pulling image moby/buildkit:buildx-stable-1 4.6s
=> => creating container buildx_buildkit_multiarchbuilder0 1.1s
Name: multiarchbuilder
Driver: docker-containerNodes:
Name: multiarchbuilder0
Endpoint: npipe:////./pipe/docker_engine
Status: running
Platforms: linux/amd64, linux/arm64, linux/ppc64le, linux/s390x, linux/386, linux/arm/v7, linux/arm/v6
```Build
```bash
docker buildx build --platform linux/arm,linux/amd64 -t jmb12686/elasticsearch:latest --push .
```