diff --git a/.gitignore b/.gitignore index 743c9dc..09db839 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,6 @@ .env* /postgres /redis -/mastodon /backups /nginx/* !/nginx/conf.d diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..bd93432 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "mastodon"] + path = mastodon + url = https://github.com/mastodon/mastodon.git diff --git a/Dockerfile b/Dockerfile index b89752e..7f1aab6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,7 +3,7 @@ FROM tootsuite/mastodon:v4.1.4 USER root RUN mkdir -p /var/cache/apt/archives/partial && apt autoclean -RUN apt update && apt-get install -y sudo vim htop patch && rm -rf /var/lib/apt/lists/* +RUN apt update && apt-get install -y sudo vim htop && rm -rf /var/lib/apt/lists/* # Restore working dir WORKDIR /opt/mastodon diff --git a/docker-compose.yml b/docker-compose.yml index e40a217..4ebd574 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -103,6 +103,18 @@ services: - ./nginx/cache:/var/cache/nginx - ./nginx/conf.d:/etc/nginx/conf.d + duplicity: + container_name: mastodon-duplicity + hostname: mastodon-duplicity + restart: always + image: ghcr.io/tecnativa/docker-duplicity-postgres-s3:v3.1.1 + env_file: .env.duplicity + networks: + - internal_network + - external_network + volumes: + - ./redis:/mnt/redis:ro + networks: external_network: internal_network: diff --git a/env.duplicity.sample b/env.duplicity.sample new file mode 100644 index 0000000..c5cb623 --- /dev/null +++ b/env.duplicity.sample @@ -0,0 +1,23 @@ +PGHOST=db +PGUSER=mastodon +PGPASSWORD= +DBS_TO_INCLUDE="^mastodon_production$" + +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= + +DST=boto3+s3:///backups/mastodon +PASSPHRASE= +OPTIONS=--s3-use-ia + +JOB_150_WHAT=cp /mnt/redis/dump.rdb /mnt/backup/src/dump.rdb +JOB_150_WHEN=daily +JOB_500_WHEN=never + +EMAIL_FROM= +EMAIL_TO= +SMTP_HOST= +SMTP_PORT= +SMTP_USER= +SMTP_PASS= +SMTP_REPORT_SUCCESS=0 diff --git a/mastodon b/mastodon new file mode 160000 index 0000000..3f5af76 --- /dev/null +++ b/mastodon @@ -0,0 +1 @@ +Subproject commit 3f5af768c8f1401f77d14ad5b6aeccdb7e02a9f0