118 lines
2.9 KiB
YAML
118 lines
2.9 KiB
YAML
services:
|
|
node-red:
|
|
image: nodered/node-red:latest
|
|
container_name: node-red
|
|
restart: always
|
|
ports:
|
|
- "1880:1880"
|
|
volumes:
|
|
- node_red_data:/data
|
|
|
|
influxdb:
|
|
image: influxdb:2.7
|
|
container_name: influxdb
|
|
restart: always
|
|
ports:
|
|
- "8086:8086"
|
|
environment:
|
|
- INFLUXDB_ADMIN_USER=${INFLUXDB_ADMIN_USER}
|
|
- INFLUXDB_ADMIN_PASSWORD=${INFLUXDB_ADMIN_PASSWORD}
|
|
- INFLUXDB_BUCKET=${INFLUXDB_BUCKET}
|
|
- INFLUXDB_ORG=${INFLUXDB_ORG}
|
|
volumes:
|
|
- influxdb_data:/var/lib/influxdb2
|
|
|
|
grafana:
|
|
image: grafana/grafana:latest
|
|
container_name: grafana
|
|
restart: always
|
|
ports:
|
|
- "3000:3000"
|
|
environment:
|
|
- GF_SECURITY_ADMIN_USER=${GF_SECURITY_ADMIN_USER}
|
|
- GF_SECURITY_ADMIN_PASSWORD=${GF_SECURITY_ADMIN_PASSWORD}
|
|
volumes:
|
|
- grafana_data:/var/lib/grafana
|
|
depends_on:
|
|
- influxdb
|
|
|
|
jenkins:
|
|
image: jenkins/jenkins:lts
|
|
container_name: jenkins
|
|
restart: always
|
|
ports:
|
|
- "8080:8080" # Web
|
|
- "50000:50000" # Agents
|
|
volumes:
|
|
- jenkins_home:/var/jenkins_home
|
|
|
|
gitea:
|
|
image: gitea/gitea:latest
|
|
container_name: gitea
|
|
restart: always
|
|
environment:
|
|
- USER_UID=1000
|
|
- USER_GID=1000
|
|
ports:
|
|
- "3001:3000" # Webinterface (anders dan Grafana)
|
|
- "222:22" # SSH voor Git
|
|
volumes:
|
|
- gitea_data:/data
|
|
|
|
proxymanager:
|
|
image: jc21/nginx-proxy-manager:latest
|
|
container_name: proxymanager
|
|
restart: always
|
|
ports:
|
|
- "80:80" # HTTP
|
|
- "443:443" # HTTPS
|
|
- "81:81" # Admin UI
|
|
environment:
|
|
DB_MYSQL_HOST: ${NPM_DB_MYSQL_HOST:-db}
|
|
DB_MYSQL_PORT: ${NPM_DB_MYSQL_PORT:-3306}
|
|
DB_MYSQL_USER: ${NPM_DB_MYSQL_USER}
|
|
DB_MYSQL_PASSWORD: ${NPM_DB_MYSQL_PASSWORD}
|
|
DB_MYSQL_NAME: ${NPM_DB_MYSQL_NAME}
|
|
volumes:
|
|
- proxymanager_data:/data
|
|
- proxymanager_letsencrypt:/etc/letsencrypt
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
depends_on:
|
|
- db
|
|
|
|
db:
|
|
image: jc21/mariadb-aria:latest
|
|
container_name: proxymanager_db
|
|
restart: always
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
|
MYSQL_DATABASE: ${MYSQL_DATABASE}
|
|
MYSQL_USER: ${MYSQL_USER}
|
|
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
|
volumes:
|
|
- proxymanager_db_data:/var/lib/mysql
|
|
|
|
rabbitmq:
|
|
image: rabbitmq:3-management
|
|
container_name: rabbitmq
|
|
restart: always
|
|
ports:
|
|
- "5672:5672" # AMQP protocol voor apps
|
|
- "15672:15672" # Management webinterface
|
|
environment:
|
|
- RABBITMQ_DEFAULT_USER=${RABBITMQ_DEFAULT_USER}
|
|
- RABBITMQ_DEFAULT_PASS=${RABBITMQ_DEFAULT_PASS}
|
|
volumes:
|
|
- rabbitmq_data:/var/lib/rabbitmq
|
|
|
|
volumes:
|
|
rabbitmq_data:
|
|
node_red_data:
|
|
influxdb_data:
|
|
grafana_data:
|
|
jenkins_home:
|
|
gitea_data:
|
|
proxymanager_data:
|
|
proxymanager_letsencrypt:
|
|
proxymanager_db_data:
|