Put commands on new lines & modified network configurations
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@ -2,3 +2,5 @@ certs/
|
||||
data/
|
||||
env/
|
||||
sql/
|
||||
|
||||
.env
|
||||
|
49
compose.yml
49
compose.yml
@ -24,12 +24,13 @@ services:
|
||||
container_name: node-exporter
|
||||
image: quay.io/prometheus/node-exporter:latest
|
||||
restart: always
|
||||
command: --path.rootfs=/host
|
||||
command:
|
||||
- --path.rootfs=/host
|
||||
pid: host
|
||||
volumes:
|
||||
- /:/host:ro,rslave
|
||||
networks:
|
||||
- service_network
|
||||
- info_network
|
||||
expose:
|
||||
- 9100
|
||||
|
||||
@ -39,7 +40,7 @@ services:
|
||||
restart: always
|
||||
command:
|
||||
- --housekeeping_interval=30s
|
||||
- --disable_metrics=disk,diskIO,network,tcp,udp,percpu,sched,process
|
||||
- --disable_metrics=disk,diskIO,network,tcp,udp,percpu,sched,process # lower CPU usage
|
||||
- --docker_only=true
|
||||
devices:
|
||||
- /dev/kmsg
|
||||
@ -50,7 +51,7 @@ services:
|
||||
- /var/lib/docker:/var/lib/docker:ro
|
||||
- /dev/disk:/dev/disk:ro
|
||||
networks:
|
||||
- service_network
|
||||
- info_network
|
||||
expose:
|
||||
- 8080
|
||||
|
||||
@ -58,13 +59,15 @@ services:
|
||||
container_name: prometheus
|
||||
image: prom/prometheus:latest
|
||||
restart: unless-stopped
|
||||
command: --config.file=/config/prometheus.yml
|
||||
command:
|
||||
- --config.file=/config/prometheus.yml
|
||||
user: 1001:0
|
||||
volumes:
|
||||
- ./data/prometheus/config:/config
|
||||
- ./data/prometheus/data:/prometheus
|
||||
networks:
|
||||
- service_network
|
||||
- info_network
|
||||
expose:
|
||||
- 9090
|
||||
|
||||
@ -104,7 +107,7 @@ services:
|
||||
env_file: ./env/nextcloud.env
|
||||
volumes:
|
||||
- ./data/nextcloud:/var/www/html
|
||||
- /mnt/storage/nextcloud:/var/www/html/data
|
||||
- $LARGE_STORAGE_DIR/nextcloud:/var/www/html/data
|
||||
networks:
|
||||
- service_network
|
||||
- nextcloud_network
|
||||
@ -118,7 +121,10 @@ services:
|
||||
container_name: nextcloud-db
|
||||
image: mariadb:10.6
|
||||
restart: always
|
||||
command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
|
||||
command:
|
||||
- --transaction-isolation=READ-COMMITTED
|
||||
- --log-bin=binlog
|
||||
- --binlog-format=ROW
|
||||
env_file: ./env/nextcloud-db.env
|
||||
volumes:
|
||||
- ./data/nextcloud-db:/var/lib/mysql
|
||||
@ -152,7 +158,8 @@ services:
|
||||
container_name: pterodactyl-db
|
||||
image: mariadb:10.5
|
||||
restart: always
|
||||
command: --default-authentication-plugin=mysql_native_password
|
||||
command:
|
||||
- --default-authentication-plugin=mysql_native_password
|
||||
env_file: ./env/pterodactyl-db.env
|
||||
volumes:
|
||||
- ./data/pterodactyl-db:/var/lib/mysql
|
||||
@ -182,8 +189,8 @@ services:
|
||||
working_dir: /photoprism
|
||||
volumes:
|
||||
- ./data/photoprism:/photoprism/storage
|
||||
- /mnt/storage/photoprism/import:/photoprism/import
|
||||
- /mnt/storage/photoprism/originals:/photoprism/originals
|
||||
- $LARGE_STORAGE_DIR/photoprism/import:/photoprism/import
|
||||
- $LARGE_STORAGE_DIR/photoprism/originals:/photoprism/originals
|
||||
networks:
|
||||
- service_network
|
||||
- photoprism_network
|
||||
@ -196,7 +203,14 @@ services:
|
||||
container_name: photoprism-db
|
||||
image: mariadb:10.10
|
||||
restart: always
|
||||
command: --innodb-buffer-pool-size=512M --transaction-isolation=READ-COMMITTED --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --max-connections=512 --innodb-rollback-on-timeout=OFF --innodb-lock-wait-timeout=120
|
||||
command:
|
||||
- --innodb-buffer-pool-size=512M
|
||||
- --transaction-isolation=READ-COMMITTED
|
||||
- --character-set-server=utf8mb4
|
||||
- --collation-server=utf8mb4_unicode_ci
|
||||
- --max-connections=512
|
||||
- --innodb-rollback-on-timeout=OFF
|
||||
- --innodb-lock-wait-timeout=120
|
||||
env_file: ./env/photoprism-db.env
|
||||
volumes:
|
||||
- ./data/photoprism-db:/var/lib/mysql
|
||||
@ -219,9 +233,10 @@ services:
|
||||
volumes:
|
||||
- ./data/jellyfin/config:/config
|
||||
- ./data/jellyfin/cache:/cache
|
||||
- /mnt/storage/media/movies:/movies
|
||||
- /mnt/storage/media/shows:/shows
|
||||
- /mnt/storage/media/books:/books
|
||||
- $LARGE_STORAGE_DIR/media/movies:/movies
|
||||
- $LARGE_STORAGE_DIR/media/shows:/shows
|
||||
- $LARGE_STORAGE_DIR/media/books:/books
|
||||
- $LARGE_STORAGE_DIR/media/yt:/yt
|
||||
networks:
|
||||
service_network:
|
||||
exposed_service_network:
|
||||
@ -233,7 +248,7 @@ services:
|
||||
restart: unless-stopped
|
||||
env_file: ./env/gitea.env
|
||||
volumes:
|
||||
- /mnt/storage/gitea:/data
|
||||
- $LARGE_STORAGE_DIR/gitea:/data
|
||||
networks:
|
||||
- service_network
|
||||
- gitea_network
|
||||
@ -269,6 +284,7 @@ services:
|
||||
container_name: uptime-kuma
|
||||
image: louislam/uptime-kuma:latest
|
||||
restart: unless-stopped
|
||||
tty: true
|
||||
volumes:
|
||||
- ./data/uptime-kuma:/app/data
|
||||
networks:
|
||||
@ -276,8 +292,9 @@ services:
|
||||
expose:
|
||||
- 3001
|
||||
|
||||
|
||||
networks:
|
||||
info_network:
|
||||
name: info_network
|
||||
nextcloud_network:
|
||||
name: nextcloud_network
|
||||
pterodactyl_network:
|
||||
|
12
scripts/backup-all.sh
Executable file
12
scripts/backup-all.sh
Executable file
@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||
DEST_DIR="$1"
|
||||
|
||||
if [ -z "$DEST_DIR" ]; then
|
||||
echo USAGE: "$SCRIPT_DIR"/backup-all.sh [DEST]
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Backup new data & delete old data
|
||||
/usr/bin/rsync -a --delete "$SCRIPT_DIR"/../ "$DEST_DIR"
|
12
scripts/backup-data.sh
Executable file
12
scripts/backup-data.sh
Executable file
@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||
DEST_DIR="$1"
|
||||
|
||||
if [ -z "$DEST_DIR" ]; then
|
||||
echo USAGE: "$SCRIPT_DIR"/backup-all.sh [DEST]
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Backup new data & delete old data
|
||||
/usr/bin/rsync -a --delete "$SCRIPT_DIR"/../data/ "$DEST_DIR"
|
@ -1,12 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
COMPOSE_PATH=/root/new-services
|
||||
|
||||
|
||||
databases=$(docker compose -f ${COMPOSE_PATH}/compose.yml ps | grep '\-db' | awk '{print $1}' | tr '\n' ' ')
|
||||
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||
COMPOSE_DIR="$SCRIPT_DIR"/../
|
||||
|
||||
# Get all service databases, dump databases, & copy database to compose path
|
||||
databases=$(docker compose -f ${COMPOSE_DIR}/compose.yml ps | grep '\-db' | awk '{print $1}' | tr '\n' ' ')
|
||||
for db in $databases; do
|
||||
db_env_path=${COMPOSE_PATH}/env/${db}.env
|
||||
db_env_path=${COMPOSE_DIR}/env/${db}.env
|
||||
|
||||
if [ ! -f $db_env_path ]; then
|
||||
echo "Could not find the environment file for database '$db'"
|
||||
@ -20,10 +20,10 @@ for db in $databases; do
|
||||
echo -e "\nDumping database '${db}'"
|
||||
docker exec ${db} sh -c "$db_dmp_cmd" &> /dev/null
|
||||
|
||||
echo "Copying database dump '${db_service}.sql' to '${COMPOSE_PATH}/sql/${db_service}.sql'"
|
||||
docker cp ${db}:/root/${db_service}.sql ${COMPOSE_PATH}/sql/${db_service}.sql &> /dev/null
|
||||
echo "Copying database dump '${db_service}.sql' to '${COMPOSE_DIR}/sql/${db_service}.sql'"
|
||||
docker cp ${db}:/root/${db_service}.sql ${COMPOSE_DIR}/sql/${db_service}.sql &> /dev/null
|
||||
|
||||
chown -R root:root ${COMPOSE_PATH}/sql
|
||||
chown -R root:root ${COMPOSE_DIR}/sql
|
||||
done
|
||||
|
||||
echo -e "\nDumping complete!"
|
||||
|
Reference in New Issue
Block a user