Compare commits

..

10 Commits

5 changed files with 204 additions and 90 deletions

29
cadvisor.yml Normal file
View File

@@ -0,0 +1,29 @@
# 8010: cadvisor
# 8015: prometheus
version: '2.4'
services:
# cadvisor
cadvisor:
image: google/cadvisor
restart: on-failure
ports:
- "127.0.0.1:8010:8080"
volumes:
- "/:/rootfs:ro"
- "/var/run:/var/run:rw"
- "/sys:/sys:ro"
- "/var/lib/docker/:/var/lib/docker:ro"
- "/dev/disk/:/dev/disk:ro"
# prometheus
prometheus:
image: prom/prometheus
restart: on-failure
links:
- cadvisor
ports:
- "127.0.0.1:8015:9090"
volumes:
- "./prometheus/config:/etc/prometheus"
- "./prometheus/data:/prometheus"

View File

@@ -8,44 +8,20 @@
# 8007: phpmyadmin # 8007: phpmyadmin
# 8008: matrix # 8008: matrix
# 8009: mediagoblin # 8009: mediagoblin
# 8010: cadvisor
# 8011: gitea # 8011: gitea
# 8012: pleroma # 8012: pleroma
# 8013: peertube # 8013: peertube
# 8014: parsoid # 8014: parsoid
# 8015: prometheus # 8016: woodpecker
# 8017: lemmy
# 8018: lemmy-ui
# 8019: pictrs
# 8020: iframely
# 8021: adminer
# 8022: webchat
version: '2.4' version: '2.4'
services: services:
# matrix
matrix:
image: matrixdotorg/synapse:latest-py3
# image: matrixdotorg/synapse:v0.99.2-py3
restart: on-failure
volumes:
- ./matrix:/data
environment:
SYNAPSE_SERVER_NAME: matrix.monarch-pass.net
SYNAPSE_REPORT_STATS: "yes"
POSTGRES_DB: synapse
POSTGRES_HOST: postgres
POSTGRES_PASSWORD: ${SYNAPSE_POSTGRES_PASSWORD}
POSTGRES_USER: matrix
ports:
- "127.0.0.1:8008:8008"
- "8448:8448"
links:
- postgres
# openarena
openarena:
image: sago007/openarena
restart: on-failure
volumes:
- ./openarena:/data
ports:
- "27960:27960/udp"
# malacoda.monarch-pass.net/wiki # malacoda.monarch-pass.net/wiki
malacodapedia: malacodapedia:
#image: mediawiki #image: mediawiki
@@ -72,7 +48,7 @@ services:
- "127.0.0.1:8004:9001" - "127.0.0.1:8004:9001"
restart: on-failure restart: on-failure
volumes: volumes:
- ./etherpad_settings.json:/opt/etherpad-lite/settings.json - ./etherpad/settings.json:/opt/etherpad-lite/settings.json
# hastebin.monarch-pass.net # hastebin.monarch-pass.net
hastebin: hastebin:
@@ -148,29 +124,38 @@ services:
- ./gitea:/data - ./gitea:/data
- /home/git/.ssh:/data/git/.ssh - /home/git/.ssh:/data/git/.ssh
# glitchcity.info # CI server
glitchcity: woodpecker-server:
links: image: laszlocloud/woodpecker-server:latest
- memcached:cache
- mariadb:db
ports: ports:
- 127.0.0.1:8002:80 - 8016:8000
restart: on-failure - 9000
volumes: volumes:
- ./glitchcity.info/userdata:/userdata - ./woodpecker:/var/lib/drone/
- ./glitchcity.info/log:/var/log restart: on-failure
build: https://forge.monarch-pass.net/glitch-city-laboratories/glitch-city-laboratories.git
environment: environment:
GCL_DB_HOST: db - DRONE_OPEN=true
GCL_DB_NAME: glitchcity - DRONE_HOST=https://ci.monarch-pass.net
GCL_DB_USER: glitchcity - DRONE_GITEA=true
GCL_DB_PASSWORD: ${GCL_DB_PASSWORD} - DRONE_ADMIN=malacoda
GCL_FORUMS_URL: //forums.glitchcity.info - DRONE_GITEA_URL=https://forge.monarch-pass.net
GCL_WIKI_URL: //glitchcity.info/wiki - DRONE_GITEA_GIT_USERNAME=Woodpecker
GCL_MEMCACHED_HOST: cache - DRONE_GITEA_GIT_PASSWORD=${DRONE_GITEA_GIT_PASSWORD}
GCL_SMTP_HOST: mail.gandi.net - DRONE_GITEA_PRIVATE_MODE=true
GCL_SMTP_USER: no-reply@monarch-pass.net - DRONE_SECRET=${DRONE_SECRET}
GCL_SMTP_PASSWORD: ${GCL_SMTP_PASSWORD}
# CI agent
woodpecker-agent:
image: laszlocloud/woodpecker-agent:latest
command: agent
restart: on-failure
depends_on:
- woodpecker-server
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- DRONE_SERVER=woodpecker-server:9000
- DRONE_SECRET=${DRONE_SECRET}
# phpmyadmin # phpmyadmin
phpmyadmin: phpmyadmin:
@@ -183,31 +168,6 @@ services:
environment: environment:
PMA_ABSOLUTE_URI: "https://phpmyadmin.monarch-pass.net/" PMA_ABSOLUTE_URI: "https://phpmyadmin.monarch-pass.net/"
# cadvisor
cadvisor:
image: google/cadvisor
restart: on-failure
ports:
- "127.0.0.1:8010:8080"
volumes:
- "/:/rootfs:ro"
- "/var/run:/var/run:rw"
- "/sys:/sys:ro"
- "/var/lib/docker/:/var/lib/docker:ro"
- "/dev/disk/:/dev/disk:ro"
# prometheus
prometheus:
image: prom/prometheus
restart: on-failure
links:
- cadvisor
ports:
- "127.0.0.1:8015:9090"
volumes:
- "./prometheus/config:/etc/prometheus"
- "./prometheus/data:/prometheus"
# parsoid # parsoid
parsoid: parsoid:
image: thenets/parsoid:0.10 image: thenets/parsoid:0.10
@@ -244,25 +204,13 @@ services:
# postgres # postgres
postgres: postgres:
image: postgres:10 image: postgres:13
restart: on-failure restart: on-failure
environment: environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
volumes: volumes:
- ./postgresql:/var/lib/postgresql/data - ./postgresql:/var/lib/postgresql/data
# minecraft
minecraft:
image: itzg/minecraft-server
restart: on-failure
ports:
- 25565:25565
environment:
VERSION: "1.12.2"
EULA: "TRUE"
volumes:
- ./minecraft:/data
# irc # irc
irc: irc:
image: linuxserver/ngircd image: linuxserver/ngircd
@@ -279,3 +227,65 @@ services:
- irc - irc
volumes: volumes:
- ./irc/discord:/config - ./irc/discord:/config
lemmy:
image: dessalines/lemmy:0.14.1
ports:
- "127.0.0.1:8017:8536"
restart: always
environment:
- RUST_LOG=error
volumes:
- ./lemmy/config.hjson:/config/config.hjson
depends_on:
- postgres
- pictrs
- iframely
lemmy-ui:
image: dessalines/lemmy-ui:0.14.1
ports:
- "127.0.0.1:8018:1234"
restart: always
environment:
- LEMMY_INTERNAL_HOST=lemmy:8536
- LEMMY_EXTERNAL_HOST=namek.monarch-pass.net
- LEMMY_HTTPS=true
depends_on:
- lemmy
pictrs:
image: asonix/pictrs:v0.2.5-r0
ports:
- "127.0.0.1:8019:8080"
user: 991:991
volumes:
- ./pictrs:/mnt
restart: always
iframely:
image: dogbin/iframely:latest
ports:
- "127.0.0.1:8020:80"
volumes:
- ./iframely/config.local.js:/iframely/config.local.js:ro
restart: always
mem_limit: 200m
adminer:
image: adminer:latest
ports:
- "127.0.0.1:8021:8080"
links:
- "mariadb:db"
- postgres
webchat:
image: thelounge/thelounge:latest
ports:
- "127.0.0.1:8022:9000"
restart: always
volumes:
- ./irc/thelounge:/var/opt/thelounge
depends_on:
- irc

22
games.yml Normal file
View File

@@ -0,0 +1,22 @@
version: '2.4'
services:
# openarena
openarena:
image: sago007/openarena
restart: on-failure
volumes:
- ./openarena:/data
ports:
- "27960:27960/udp"
# minecraft
minecraft:
image: itzg/minecraft-server
restart: on-failure
ports:
- 25565:25565
environment:
VERSION: "1.12.2"
EULA: "TRUE"
volumes:
- ./minecraft:/data

27
nginx.conf.template Normal file
View File

@@ -0,0 +1,27 @@
server {
listen 80;
listen [::]:80;
server_name @SERVER_NAME@;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
client_max_body_size 100G;
server_name @SERVER_NAME@;
access_log /var/log/nginx/@SERVER_NAME@/access.log;
error_log /var/log/nginx/@SERVER_NAME@/error.log;
location /.well-known/ {
root /var/www/html/;
try_files $uri $uri/ =404;
}
location / {
proxy_pass http://127.0.0.1:@PORT@/;
}
}

26
nginxify Executable file
View File

@@ -0,0 +1,26 @@
#!/bin/bash
SERVER_NAME=$1
PORT=$2
NGINX_CONFIG=/etc/nginx
AVAILABLE_SITES="$NGINX_CONFIG/sites-available"
ENABLED_SITES="$NGINX_CONFIG/sites-enabled"
NGINX_CONF_TEMPLATE=nginx.conf.template
NGINX_CONF_NAME="$SERVER_NAME.conf"
NGINX_LOGS=/var/log/nginx
cp $NGINX_CONF_TEMPLATE "$AVAILABLE_SITES/$NGINX_CONF_NAME"
cd $AVAILABLE_SITES
sed -i "s/@SERVER_NAME@/$SERVER_NAME/g" $NGINX_CONF_NAME
sed -i "s/@PORT@/$PORT/g" $NGINX_CONF_NAME
cd $ENABLED_SITES
ln -s "../sites-available/$NGINX_CONF_NAME" .
mkdir -p "$NGINX_LOGS/$SERVER_NAME"
service nginx reload