Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Script: Mailrise (SMTP Gateway) #1340

Closed
wants to merge 10 commits into from
Closed
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions ct/mailrise.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#!/usr/bin/env bash
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: choehn86
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/YoRyan/mailrise

# App Default Values
APP="Mailrise"
var_tags="SMTP;notifications"
var_cpu="1"
var_ram="512"
var_disk="2"
var_os="debian"
var_version="12"
var_unprivileged="1"

# App Output & Base Settings
header_info "$APP"
base_settings

# Core
variables
color
catch_errors

function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /usr/local/bin/mailrise ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating ${APP} LXC"
pip3 install mailrise --upgrade &>/dev/null
systemctl restart mailrise.service
msg_ok "Updated Successfully"
exit
}

start
build_container
description

msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8025${CL}"
73 changes: 73 additions & 0 deletions install/mailrise-install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
#!/usr/bin/env bash

# Copyright (c) 2021-2025 community-scripts ORG
# Author: choehn86
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/YoRyan/mailrise

source /dev/stdin <<< "$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os

msg_info "Installing Dependencies"
$STD apt-get install -y \
curl \
sudo \
mc \
python3 \
python3-dev \
python3-pip
rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED
msg_ok "Installed Dependencies"

msg_info "Installing Mailrise"
$STD pip install mailrise

mkdir -p /opt/mailrise
cat <<EOF >/opt/mailrise/mailrise.conf
configs:
# You can send to this config with "[email protected]".
#
# The "-" is *very* important, even when configuring just a single URL.
# Apprise requires urls to be a YAML *list*.
#
basic_assistant:
urls:
- hasio://HOST/ACCESS_TOKEN
# You can send to this config with "[email protected]".
#
telegram_and_discord:
urls:
- tgram://MY_BOT_TOKEN
- discord://WEBHOOK_ID/WEBHOOK_TOKEN

# See https://github.com/YoRyan/mailrise?tab=readme-ov-file#sample-file for additional examples

EOF
choehn86 marked this conversation as resolved.
Show resolved Hide resolved

cat <<EOF >/etc/systemd/system/mailrise.service
[Unit]
Description=Mailrise SMTP notification relay
After=network.target
[Service]
ExecStart=/usr/local/bin/mailrise /opt/mailrise/mailrise.conf
Restart=always
User=root
[Install]
WantedBy=multi-user.target
EOF

systemctl enable -q --now mailrise.service
msg_ok "Installed Mailrise"

motd_ssh
customize

msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"
39 changes: 39 additions & 0 deletions json/mailrise.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
"name": "Mailrise",
"slug": "mailrise",
"categories": [
0
],
"date_created": "2025-01-08",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 8025,
"documentation": null,
"website": "https://github.com/YoRyan/mailrise",
"logo": "https://github.com/YoRyan/mailrise/blob/main/src/mailrise/asset/mailrise-logo.png?raw=true",
"description": "An SMTP gateway for Apprise notifications.",
"install_methods": [
{
"type": "default",
"script": "ct/mailrise.sh",
"resources": {
"cpu": 1,
"ram": 512,
"hdd": 2,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "After the initial installation: See https://github.com/community-scripts/ProxmoxVE/discussions/1356 for basic setup guide",
"type": "info"
}
]
}
Loading