Compare commits
25 Commits
ad0e98deff
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 7eb1a2c039 | |||
| e151ec34f0 | |||
| a2123343e5 | |||
| 0ae86255b7 | |||
| e3ba49dba9 | |||
| 5cb0927eea | |||
| 0071abb0c3 | |||
| 6c6431348b | |||
| 947a1a259a | |||
| f1a41335af | |||
| 9be4ff7a0f | |||
| fa3b476741 | |||
| e0946f30db | |||
| 3f27d57836 | |||
| 790a185166 | |||
| 7032d2de5b | |||
| 8e04118d48 | |||
| dd4ac1c72b | |||
| 82247663f9 | |||
| 761576e688 | |||
| 739e660f68 | |||
| bb223749ef | |||
| 18576db135 | |||
| 91c5956211 | |||
| a3920e42ff |
63
amudanan/docker-compose.yml
Normal file
63
amudanan/docker-compose.yml
Normal file
@@ -0,0 +1,63 @@
|
||||
services:
|
||||
owncloud:
|
||||
image: owncloud/server:latest
|
||||
container_name: owncloud_server
|
||||
restart: always
|
||||
ports:
|
||||
- 8080:8080
|
||||
depends_on:
|
||||
- mariadb
|
||||
- redis
|
||||
environment:
|
||||
- OWNCLOUD_DOMAIN=192.168.1.4:8080
|
||||
- OWNCLOUD_TRUSTED_DOMAINS=amudanan.johnsnexus.click
|
||||
- OWNCLOUD_DB_TYPE=mysql
|
||||
- OWNCLOUD_DB_NAME=owncloud
|
||||
- OWNCLOUD_DB_USERNAME=owncloud
|
||||
- OWNCLOUD_DB_PASSWORD=owncloud
|
||||
- OWNCLOUD_DB_HOST=mariadb
|
||||
- OWNCLOUD_ADMIN_USERNAME=admin
|
||||
- OWNCLOUD_ADMIN_PASSWORD=Zephie2023
|
||||
- OWNCLOUD_MYSQL_UTF8MB4=true
|
||||
- OWNCLOUD_REDIS_ENABLED=true
|
||||
- OWNCLOUD_REDIS_HOST=redis
|
||||
healthcheck:
|
||||
test: ["CMD", "/usr/bin/healthcheck"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 5
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/owncloud/data:/mnt/data
|
||||
|
||||
mariadb:
|
||||
image: mariadb:10.11 # minimum required ownCloud version is 10.9
|
||||
container_name: owncloud_mariadb
|
||||
restart: always
|
||||
environment:
|
||||
- MYSQL_ROOT_PASSWORD=owncloud
|
||||
- MYSQL_USER=owncloud
|
||||
- MYSQL_PASSWORD=owncloud
|
||||
- MYSQL_DATABASE=owncloud
|
||||
- MARIADB_AUTO_UPGRADE=1
|
||||
command: ["--max-allowed-packet=128M", "--innodb-log-file-size=64M"]
|
||||
healthcheck:
|
||||
test: ["CMD", "mysqladmin", "ping", "-u", "root", "--password=owncloud"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/mysql/owncloud:/var/lib/mysql
|
||||
|
||||
redis:
|
||||
image: redis:6
|
||||
container_name: owncloud_redis
|
||||
restart: always
|
||||
command: ["--databases", "1"]
|
||||
healthcheck:
|
||||
test: ["CMD", "redis-cli", "ping"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/redis/owncloud:/data
|
||||
|
||||
20
collabora/docker-compose.yml
Normal file
20
collabora/docker-compose.yml
Normal file
@@ -0,0 +1,20 @@
|
||||
# Collabora for OWNCLOUD (amudanan) on the ELITE cluster
|
||||
|
||||
services:
|
||||
collabora:
|
||||
image: collabora/code:latest
|
||||
container_name: collabora
|
||||
expose:
|
||||
- 9980:9980
|
||||
ports:
|
||||
- 9980:9980
|
||||
cap_add:
|
||||
- MKNOD
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- extra_params=-o:ssl.enable=true # key parameter
|
||||
- domain=https://amudanan.johnsnexus.click
|
||||
- TZ=Europe/London
|
||||
# - password=Zephie2023
|
||||
# - username=admin
|
||||
|
||||
45
ghost/docker-compose.yml
Normal file
45
ghost/docker-compose.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
services:
|
||||
ghost:
|
||||
image: ghost:latest
|
||||
deploy:
|
||||
replicas: 1
|
||||
restart: always
|
||||
ports:
|
||||
- 2368:2368
|
||||
environment:
|
||||
# see https://ghost.org/docs/config/#configuration-options
|
||||
database__client: mysql
|
||||
database__connection__host: mysql
|
||||
database__connection__user: ghost
|
||||
database__connection__password: Carrot
|
||||
database__connection__database: ghostdb
|
||||
url: https://ghost.johnsnexus.click
|
||||
#
|
||||
mail__transport: "SMTP"
|
||||
mail__options__host: "smtp.gmail.com"
|
||||
# mail__options__host: "smtp.mailgun.org"
|
||||
mail__options__port: "587"
|
||||
mail__options__secureConnection: "false"
|
||||
mail__options__auth__user: "revjohndanderson@gmail.com"
|
||||
mail__options__auth__pass: "sorc lxqh araw lppf"
|
||||
# contrary to the default mentioned in the linked documentation, this image defaults to NODE_ENV=production (so development mode needs to be explic>
|
||||
#NODE_ENV: development
|
||||
depends_on:
|
||||
- mysql
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/ghost/data:/var/lib/ghost/content
|
||||
|
||||
mysql:
|
||||
image: mysql:8.4.6 # latest or last version of version 8; Ghost doesn't recognise version 9
|
||||
deploy:
|
||||
placement:
|
||||
constraints:
|
||||
- node.labels.database == here
|
||||
restart: always
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/mysql/ghost:/var/lib/mysql:rw
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: Vegetable
|
||||
MYSQL_DATABASE: ghostdb
|
||||
MYSQL_USER: ghost
|
||||
MYSQL_PASSWORD: Carrot
|
||||
13
gotify/docker-compose.yml
Normal file
13
gotify/docker-compose.yml
Normal file
@@ -0,0 +1,13 @@
|
||||
services:
|
||||
gotify:
|
||||
image: gotify/server:latest
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/gotify:/app/data
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- 8111:80
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
environment:
|
||||
- TZ=Europe/London
|
||||
|
||||
22
grafana/docker-compose.yml
Normal file
22
grafana/docker-compose.yml
Normal file
@@ -0,0 +1,22 @@
|
||||
services:
|
||||
grafana:
|
||||
image: grafana/grafana:11.6
|
||||
container_name: grafana
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- '3030:3000'
|
||||
user: '0'
|
||||
environment:
|
||||
- GF_SECURITY_ADMIN_USER=admin
|
||||
- GF_SECURITY_ADMIN_PASSWORD=Zephie2023
|
||||
- GF_INSTALL_PLUGINS=
|
||||
- GF_SMTP_startTLS_policy
|
||||
- GF_SMTP_ENABLED=true
|
||||
- GF_SMTP_HOST=smtp.gmail.com:587
|
||||
- GF_SMTP_SKIP_VERIFY=true
|
||||
- GF_SMTP_USER=john.anderson1955@gmail.com
|
||||
- GF_SMTP_PASSWORD=ohzyczbzdgrnspxc
|
||||
- GF_SMTP_FROM_NAME=grafana
|
||||
- GF_SMTP_FROM_ADDRESS=john.anderson1955@gmail.com
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/grafana_data:/var/lib/grafana:rw
|
||||
47
hoarder/docker-compose.yml
Normal file
47
hoarder/docker-compose.yml
Normal file
@@ -0,0 +1,47 @@
|
||||
services:
|
||||
web:
|
||||
image: ghcr.io/karakeep-app/karakeep:release
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
# By default, the data is stored in a docker volume called "data".
|
||||
# If you want to mount a custom directory, change the volume mapping to:
|
||||
# - /path/to/your/directory:/data
|
||||
- /mnt/cephfs/docker/hoarder/data:/data
|
||||
ports:
|
||||
- 3200:3000
|
||||
environment:
|
||||
MEILI_ADDR: http://meilisearch:7700
|
||||
BROWSER_WEB_URL: http://chrome:9222
|
||||
NEXTAUTH_SECRET: tZ4AJx370L2PrqdCCsier9Almay6GxgF
|
||||
MEILI_MASTER_KEY: quoK8t8zoTPOJfcF4Fw9hg44IyhyqreS
|
||||
NEXTAUTH_URL: http://localhost:3000 # this is internal to the container
|
||||
CRAWLER_DOWNLOAD_BANNER_IMAGE: "true"
|
||||
# OPENAI_API_KEY: ...
|
||||
|
||||
# You almost never want to change the value of the DATA_DIR variable.
|
||||
# If you want to mount a custom directory, change the volume mapping above instead.
|
||||
DATA_DIR: /data # DON'T CHANGE THIS
|
||||
|
||||
chrome:
|
||||
image: gcr.io/zenika-hub/alpine-chrome:124
|
||||
restart: unless-stopped
|
||||
command:
|
||||
- --no-sandbox
|
||||
- --disable-gpu
|
||||
- --disable-dev-shm-usage
|
||||
- --remote-debugging-address=0.0.0.0
|
||||
- --remote-debugging-port=9222
|
||||
- --hide-scrollbars-enable-features=ConversionMeasurement,AttributionReportingCrossAppWeb
|
||||
|
||||
|
||||
meilisearch:
|
||||
image: getmeili/meilisearch:v1.13.1
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
MEILI_NO_ANALYTICS: "true"
|
||||
NEXTAUTH_SECRET: tZ4AJx370L2PrqdCCsier9Almay6GxgF
|
||||
MEILI_MASTER_KEY: quoK8t8zoTPOJfcF4Fw9hg44IyhyqreS
|
||||
NEXTAUTH_URL: http://localhost:3000
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/hoarder/meili:/meili_data
|
||||
|
||||
9
iperf3/docker-compose.yml
Normal file
9
iperf3/docker-compose.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
version: '3.9'
|
||||
services:
|
||||
iperf3:
|
||||
image: mlabbe/iperf3
|
||||
ports:
|
||||
- '5201:5201/udp'
|
||||
- '5201:5201/tcp'
|
||||
restart: unless-stopped
|
||||
container_name: iperf3
|
||||
7
it-tools/docker-compose.yml
Normal file
7
it-tools/docker-compose.yml
Normal file
@@ -0,0 +1,7 @@
|
||||
services:
|
||||
it-tools:
|
||||
image: 'corentinth/it-tools:latest'
|
||||
ports:
|
||||
- '8090:80'
|
||||
restart: unless-stopped
|
||||
container_name: it-tools
|
||||
31
n8n/docker-compose.yml
Normal file
31
n8n/docker-compose.yml
Normal file
@@ -0,0 +1,31 @@
|
||||
services:
|
||||
|
||||
n8n:
|
||||
image: docker.n8n.io/n8nio/n8n
|
||||
container_name: n8n
|
||||
restart: always
|
||||
ports:
|
||||
- "5678:5678"
|
||||
environment:
|
||||
- WEBHOOK_URL=https://donut.johnsnexus.click
|
||||
- GENERIC_TIMEZONE=Europe/London
|
||||
- DB_SQLITE_POOL_SIZE=1
|
||||
- N8N_RUNNERS_ENABLED=true
|
||||
- N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
|
||||
#
|
||||
- N8N_HOST=donut.johnsnexus.click
|
||||
- N8N_PORT=5678
|
||||
- N8N_PROTOCOL=https
|
||||
- NODE_ENV=production
|
||||
- N8N_PROXY_HOPS=1
|
||||
volumes:
|
||||
- n8n_data:/home/node/.n8n
|
||||
|
||||
volumes:
|
||||
n8n_data:
|
||||
driver: local
|
||||
driver_opts:
|
||||
o: bind
|
||||
type: none
|
||||
device: /mnt/cephfs/docker/n8n/n8n_data
|
||||
|
||||
96
paperless-ngx/docker-compose.yml
Normal file
96
paperless-ngx/docker-compose.yml
Normal file
@@ -0,0 +1,96 @@
|
||||
# Docker Compose file for running paperless from the docker container registry.
|
||||
# This file contains everything paperless needs to run.
|
||||
# Paperless supports amd64, arm and arm64 hardware.
|
||||
#
|
||||
# All compose files of paperless configure paperless in the following way:
|
||||
#
|
||||
# - Paperless is (re)started on system boot, if it was running before shutdown.
|
||||
# - Docker volumes for storing data are managed by Docker.
|
||||
# - Folders for importing and exporting files are created in the same directory
|
||||
# as this file and mounted to the correct folders inside the container.
|
||||
# - Paperless listens on port 8000.
|
||||
#
|
||||
# In addition to that, this Docker Compose file adds the following optional
|
||||
# configurations:
|
||||
#
|
||||
# - Instead of SQLite (default), PostgreSQL is used as the database server.
|
||||
# - Apache Tika and Gotenberg servers are started with paperless and paperless
|
||||
# is configured to use these services. These provide support for consuming
|
||||
# Office documents (Word, Excel, Power Point and their LibreOffice counter-
|
||||
# parts.
|
||||
#
|
||||
# To install and update paperless with this file, do the following:
|
||||
#
|
||||
# - Copy this file as 'docker-compose.yml' and the files 'docker-compose.env'
|
||||
# and '.env' into a folder.
|
||||
# - Run 'docker compose pull'.
|
||||
# - Run 'docker compose run --rm webserver createsuperuser' to create a user.
|
||||
# - Run 'docker compose up -d'.
|
||||
#
|
||||
# For more extensive installation and update instructions, refer to the
|
||||
# documentation.
|
||||
|
||||
services:
|
||||
broker:
|
||||
image: docker.io/library/redis:7
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/paperless-ngx/redisdata:/data
|
||||
|
||||
db:
|
||||
image: docker.io/library/postgres:16
|
||||
restart: unless-stopped
|
||||
deploy:
|
||||
placement:
|
||||
constraints:
|
||||
- node.labels.database == here
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/paperless-ngx/pgdata:/var/lib/postgresql/data
|
||||
environment:
|
||||
POSTGRES_DB: paperless
|
||||
POSTGRES_USER: paperless
|
||||
POSTGRES_PASSWORD: paperless
|
||||
|
||||
webserver:
|
||||
image: ghcr.io/paperless-ngx/paperless-ngx:latest
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- db
|
||||
- broker
|
||||
- gotenberg
|
||||
- tika
|
||||
ports:
|
||||
- "8600:8000"
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/paperless-ngx/data:/usr/src/paperless/data
|
||||
- /mnt/cephfs/docker/paperless-ngx/media:/usr/src/paperless/media
|
||||
- /mnt/cephfs/docker/paperless-ngx/export:/usr/src/paperless/export
|
||||
- /mnt/cephfs/docker/paperless-ngx/consume:/usr/src/paperless/consume
|
||||
environment:
|
||||
PAPERLESS_REDIS: redis://broker:6379
|
||||
PAPERLESS_DBHOST: db
|
||||
PAPERLESS_TIKA_ENABLED: 1
|
||||
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
|
||||
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
|
||||
#
|
||||
USERMAP_UID: 1000
|
||||
USERMAP_GID: 1000
|
||||
PAPERLESS_TIME_ZONE: Europe/London
|
||||
PAPERLESS_OCR_LANGUAGE: eng
|
||||
#
|
||||
PAPERLESS_URL: https://wastebin.johnsnexus.click
|
||||
#
|
||||
gotenberg:
|
||||
image: docker.io/gotenberg/gotenberg:8.7
|
||||
restart: unless-stopped
|
||||
|
||||
# The gotenberg chromium route is used to convert .eml files. We do not
|
||||
# want to allow external content like tracking pixels or even javascript.
|
||||
command:
|
||||
- "gotenberg"
|
||||
- "--chromium-disable-javascript=true"
|
||||
- "--chromium-allow-list=file:///tmp/.*"
|
||||
|
||||
tika:
|
||||
image: docker.io/apache/tika:latest
|
||||
restart: unless-stopped
|
||||
12
prometheus/docker-compose.yml
Normal file
12
prometheus/docker-compose.yml
Normal file
@@ -0,0 +1,12 @@
|
||||
services:
|
||||
prometheus:
|
||||
image: prom/prometheus
|
||||
# container_name: prometheus
|
||||
command:
|
||||
- '--config.file=/etc/prometheus/prometheus.yml'
|
||||
ports:
|
||||
- 9090:9090
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/prometheus:/etc/prometheus
|
||||
- /mnt/cephfs/docker/prometheus/prom_data:/prometheus
|
||||
121
prometheus/prometheus.yml
Normal file
121
prometheus/prometheus.yml
Normal file
@@ -0,0 +1,121 @@
|
||||
global:
|
||||
scrape_interval: 15s
|
||||
scrape_timeout: 10s
|
||||
evaluation_interval: 15s
|
||||
alerting:
|
||||
alertmanagers:
|
||||
- static_configs:
|
||||
- targets: []
|
||||
scheme: http
|
||||
timeout: 10s
|
||||
api_version: v2
|
||||
scrape_configs:
|
||||
- job_name: prometheus
|
||||
honor_timestamps: true
|
||||
scrape_interval: 15s
|
||||
scrape_timeout: 10s
|
||||
metrics_path: /metrics
|
||||
scheme: http
|
||||
static_configs:
|
||||
- targets:
|
||||
- localhost:9090
|
||||
# - job_name: 'omega' # static address fpr OMEGA 2.5Gb link
|
||||
# static_configs:
|
||||
# - targets: ['192.168.1.5:9100']
|
||||
#
|
||||
# - job_name: 'valhalla' # Change to whatever you like
|
||||
# static_configs:
|
||||
# - targets: ['192.168.1.7:9100'] #Change this to your server's IP
|
||||
#
|
||||
- job_name: monitor
|
||||
static_configs:
|
||||
- targets: ['192.168.1.22:9100']
|
||||
# - job_name: rasp3b
|
||||
# static_configs:
|
||||
# - targets: ['192.168.1.23:9100']
|
||||
- job_name: prod-01
|
||||
static_configs:
|
||||
- targets: ['192.168.1.12:9100']
|
||||
- job_name: prod-02
|
||||
static_configs:
|
||||
- targets: ['192.168.1.13:9100']
|
||||
- job_name: prod-03
|
||||
static_configs:
|
||||
- targets: ['192.168.1.14:9100']
|
||||
- job_name: prod-04
|
||||
static_configs:
|
||||
- targets: ['192.168.1.15:9100']
|
||||
#
|
||||
# ***
|
||||
#
|
||||
- job_name: node-16
|
||||
static_configs:
|
||||
- targets: ['192.168.1.16:9100']
|
||||
- job_name: node-17
|
||||
static_configs:
|
||||
- targets: ['192.168.1.17:9100']
|
||||
- job_name: node-18
|
||||
static_configs:
|
||||
- targets: ['192.168.1.18:9100']
|
||||
- job_name: node-19
|
||||
static_configs:
|
||||
- targets: ['192.168.1.19:9100']
|
||||
#
|
||||
# ^^^
|
||||
#
|
||||
- job_name: delta
|
||||
static_configs:
|
||||
- targets: ['192.168.1.10:9100']
|
||||
- job_name: gamma
|
||||
static_configs:
|
||||
- targets: ['192.168.1.11:9100']
|
||||
- job_name: beta
|
||||
static_configs:
|
||||
- targets: ['192.168.1.9:9100']
|
||||
#
|
||||
#
|
||||
#
|
||||
# - job_name: cadvisor_paradise
|
||||
# scrape_interval: 5s
|
||||
# static_configs:
|
||||
# - targets: ['192.168.1.151:8083']
|
||||
#
|
||||
# - job_name: cadvisor_monitor
|
||||
# scrape_interval: 5s
|
||||
# static_configs:
|
||||
# - targets: ['192.168.1.22:8083']
|
||||
##
|
||||
# - job_name: cadvisor_prod-01
|
||||
# scrape_interval: 5s
|
||||
# static_configs:
|
||||
# - targets: ['192.168.1.50:8083']
|
||||
#
|
||||
# - job_name: cadvisor_prod-02
|
||||
# scrape_interval: 5s
|
||||
# static_configs:
|
||||
# - targets: ['192.168.1.52:8083']
|
||||
#
|
||||
# - job_name: cadvisor_prod-03
|
||||
# scrape_interval: 5s
|
||||
# static_configs:
|
||||
# - targets: ['192.168.1.54:8083']
|
||||
#
|
||||
# - job_name: cadvisor_prod-04
|
||||
# scrape_interval: 5s
|
||||
# static_configs:
|
||||
# - targets: ['192.168.1.53:8083']
|
||||
#
|
||||
# - job_name: cadvisor_prod-06
|
||||
# scrape_interval: 5s
|
||||
# static_configs:
|
||||
# - targets: ['192.168.1.55:8083']
|
||||
#
|
||||
# Attempt to scrape the metrics from the standard admin port of 2019
|
||||
# Requires Caddyfile to have 2019 accessible from 0.0.0.0; "metrics" declared in the globall secrtion AND
|
||||
# a metrics handler declaring metrics are avaiable on 2019! Weird but it works!!
|
||||
#
|
||||
- job_name: caddy
|
||||
scrape_interval: 30s
|
||||
scrape_timeout: 25s
|
||||
static_configs:
|
||||
- targets: ['192.168.1.1:2019']
|
||||
11
uptime-kuma/docker-compose.yml
Normal file
11
uptime-kuma/docker-compose.yml
Normal file
@@ -0,0 +1,11 @@
|
||||
services:
|
||||
uptime-kuma:
|
||||
image: louislam/uptime-kuma:2.0.2
|
||||
container_name: uptime-kuma
|
||||
restart: always
|
||||
ports:
|
||||
- "3010:3001"
|
||||
volumes:
|
||||
- /mnt/cephfs/docker/uptime-kuma:/app/data
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
|
||||
Reference in New Issue
Block a user