Compare commits

...

10 Commits

6 changed files with 75 additions and 6 deletions

8
maintence/Containerfile Normal file
View File

@ -0,0 +1,8 @@
FROM docker.io/ruby:3.2.3
Env DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get upgrade -y
RUN apt-get install apt-transport-https curl git libidn11-dev libldap2-dev -y
RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash -
RUN apt-get install nodejs -y
RUN corepack enable
cmd bash

View File

@ -5,14 +5,13 @@ After=NetworkManager.service network.target network-online.target
RequiresMountsFor=/var/lib/containers/storage /var/run/containers/storage
# %E is "the XDG_CONFIG path"
# docker run --net internal_network --restart always --shm-size 256mb --health-cmd CMD,pg_isready,-U,postgres -v ./postgres14:/var/lib/postgresql/data -e POSTGRES_HOST_AUTH_METHOD=trust postgres:14-alpine
[Service]
Environment=PODMAN_SYSTEMD_UNIT=%n
Restart=on-failure
TimeoutStopSec=70
ExecStart=/usr/bin/podman run --name mastodon-postgresql --net internal_network --restart always --shm-size 256mb --health-cmd CMD,pg_isready,-U,postgres -v mastodon-postgresql:/var/lib/postgresql/data -e POSTGRES_HOST_AUTH_METHOD=trust postgres:14
ExecStop=/usr/bin/podman stop mastodon-postgres
ExecStopPost=/usr/bin/podman rm mastodon-postgres
ExecStart=/usr/bin/podman run -d --name mastodon-postgresql --net internal_network --restart always --shm-size 256mb --health-cmd CMD,pg_isready,-U,postgres -v mastodon-postgresql:/var/lib/postgresql/data -e POSTGRES_HOST_AUTH_METHOD=trust postgres:16
ExecStop=/usr/bin/podman stop mastodon-postgresql
ExecStopPost=/usr/bin/podman rm mastodon-postgresql
Type=oneshot
RemainAfterExit=yes

20
mastodon-redis.service Normal file
View File

@ -0,0 +1,20 @@
[Unit]
Description=mastodon-redis.service
Wants=network-online.target
After=NetworkManager.service network.target network-online.target
RequiresMountsFor=/var/lib/containers/storage /var/run/containers/storage
# %E is "the XDG_CONFIG path"
# docker run --net internal_network --restart always --health-cmd CMD,redis-cli,ping -v ./redis:/data redis:7-alpine
[Service]
Environment=PODMAN_SYSTEMD_UNIT=%n
Restart=on-failure
TimeoutStopSec=70
ExecStart=/usr/bin/podman run -d --name mastodon-redis --net internal_network --restart always --health-cmd CMD,redis-cli,ping -v mastodon-redis:/data redis:7
ExecStop=/usr/bin/podman stop mastodon-redis
ExecStopPost=/usr/bin/podman rm mastodon-redis
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=default.target

21
mastodon-sidekiq.service Normal file
View File

@ -0,0 +1,21 @@
[Unit]
Description=mastodon-sidekiq.service
Wants=network-online.target
After=NetworkManager.service network.target network-online.target
RequiresMountsFor=/var/lib/containers/storage /var/run/containers/storage
# %E is "the XDG_CONFIG path"
# docker run --net external_network --net internal_network --restart always --env-file .env.production -v ./public/system:/mastodon/public/system --health-cmd "CMD-SHELL,ps aux | grep '[s]idekiq 6' || false" ghcr.io/mastodon/mastodon:v4.2.7 bundle exec sidekiq
[Service]
Environment=PODMAN_SYSTEMD_UNIT=%n
Restart=on-failure
TimeoutStopSec=70
ExecStart=/usr/bin/podman run -d --name mastodon-sidekiq --net external_network --net internal_network --restart always --env-file %h/live/.env.production --health-cmd "CMD-SHELL,ps aux | grep '[s]idekiq 6' || false" localhost/jademoe bundle exec sidekiq
ExecStop=/usr/bin/podman stop mastodon-sidekiq
ExecStopPost=/usr/bin/podman rm mastodon-sidekiq
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=default.target

View File

@ -0,0 +1,21 @@
[Unit]
Description=mastodon-streaming.service
Wants=network-online.target
After=NetworkManager.service network.target network-online.target
RequiresMountsFor=/var/lib/containers/storage /var/run/containers/storage
# %E is "the XDG_CONFIG path"
#docker run --net external_network --net internal_network --restart always --env-file .env.production --health-cmd "CMD-SHELL,wget -q --spider --proxy=off localhost:4000/api/v1/streaming/health || exit 1" -p 127.0.0.1:4000:4000 ghcr.io/mastodon/mastodon:v4.2.7 node ./streaming
[Service]
Environment=PODMAN_SYSTEMD_UNIT=%n
Restart=on-failure
TimeoutStopSec=70
ExecStart=/usr/bin/podman run -d --name mastodon-streaming --net external_network --net internal_network --restart always --env-file %h/live/.env.production --health-cmd "CMD-SHELL,wget -q --spider --proxy=off localhost:4000/api/v1/streaming/health || exit 1" -p 127.0.0.1:4000:4000 localhost/jadestream /bin/node ./streaming
ExecStop=/usr/bin/podman stop mastodon-streaming
ExecStopPost=/usr/bin/podman rm mastodon-streaming
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=default.target

View File

@ -5,12 +5,12 @@ After=NetworkManager.service network.target network-online.target
RequiresMountsFor=/var/lib/containers/storage /var/run/containers/storage
# %E is "the XDG_CONFIG path"
#docker run --net external_network --net internal_network --restart always --env-file .env.production --health-cmd "CMD-SHELL,wget -q --spider --proxy=off localhost:3000/health || exit 1" -p 127.0.0.1:3000:3000 -v ./public/system:/mastodon/public/system ghcr.io/mastodon/mastodon:v4.2.7 bundle exec puma -C config/puma.rb
[Service]
Environment=PODMAN_SYSTEMD_UNIT=%n
Restart=on-failure
TimeoutStopSec=70
ExecStart=/usr/bin/podman run --name mastodon-web -net external_network --net internal_network --restart always --env-file %h/live/.env.production --health-cmd "CMD-SHELL,wget -q --spider --proxy=off localhost:3000/health || exit 1" -p 127.0.0.1:3000:3000 -v %h/live/public/system localhost/jademoe bundle exec puma -C config/puma.rb
ExecStart=/usr/bin/podman run -d --name mastodon-web --net external_network --net internal_network --restart always --env-file %h/live/.env.production --health-cmd "CMD-SHELL,wget -q --spider --proxy=off localhost:3000/health || exit 1" -p 127.0.0.1:3000:3000 -v %h/live/public/system:/mastodon/public/system localhost/jademoe bundle exec puma -C config/puma.rb
ExecStop=/usr/bin/podman stop mastodon-web
ExecStopPost=/usr/bin/podman rm mastodon-web
Type=oneshot