[Unit] Description=Mistborn Rocket Chat Service Requires=Mistborn-base.service After=Mistborn-base.service PartOf=Mistborn-base.service [Service] Restart=always User=root Group=docker PermissionsStartOnly=true EnvironmentFile=/opt/mistborn/.rocketchat ExecStartPre=/opt/mistborn/scripts/env/check_env_file.sh rocketchat # Shutdown container (if running) when unit is stopped ExecStartPre=/usr/local/bin/docker-compose -f /opt/mistborn/extra/rocketchat.yml down ExecStartPre=/sbin/iptables -w -I DOCKER-USER -i DIFACE -p tcp --dport 3001 -j MISTBORN_LOG_DROP # Start container when unit is started ExecStart=/usr/local/bin/docker-compose -f /opt/mistborn/extra/rocketchat.yml up --build # Stop container when unit is stopped ExecStop=/usr/local/bin/docker-compose -f /opt/mistborn/extra/rocketchat.yml down # Post stop ExecStopPost=-/sbin/iptables -D DOCKER-USER -i DIFACE -p tcp --dport 3001 -j MISTBORN_LOG_DROP [Install] WantedBy=multi-user.target