Basic Setup¶
This description uses docker-compose
as orchestration tool. You can find further documentation for that here.
A basic setup needs containers for:
- Database
- Elasticsearch
- Middleware
- Clients
Environment¶
# .env-file
INSIGHT_VERSION=13.4.0
DB_USER=insight
DB_PASS=<fill_with_a_secure_password>
DB_ROOT_PASS=<fill_with_a_secure_password>
Compose¶
# docker-compose.yaml
version: "3"
volumes:
dbdata:
driver: local
esdata:
driver: local
insightdata:
driver: local
services:
db:
environment:
- MYSQL_ROOT_PASSWORD=${DB_ROOT_PASS}
- MYSQL_USER=${DB_USER}
- MYSQL_PASSWORD=${DB_PASS}
image: gismbh/insight-db:${INSIGHT_VERSION}
ports:
- 3306:3306
restart: always
volumes:
- dbdata:/var/lib/mysql
elastic:
image: elasticsearch:7.17.1
ports:
- 9200:9200
restart: always
volumes:
- esdata:/usr/share/elasticsearch/data
tomee:
environment:
- INSIGHT_ENABLE_NONSSL=true
- INSIGHT_ENABLE_SCHEMADB=true
- INSIGHT_JDBC_PASS=${DB_PASS}
image: gismbh/insight:${INSIGHT_VERSION}
links:
- db:insight-db
- elastic:insight-es
ports:
- 8080:8080
restart: always
volumes:
- insightdata:/insight
clients:
ports:
- 80:80
image: gismbh/insight-clients:${INSIGHT_VERSION}