Update install_mailhog_as_service.sh
This commit is contained in:
@@ -1,61 +1,73 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e # stop bij fouten
|
||||||
|
|
||||||
|
echo "";
|
||||||
|
echo "===================================";
|
||||||
|
echo "Update apt...";
|
||||||
|
echo "===================================";
|
||||||
apt update
|
apt update
|
||||||
|
|
||||||
echo "";
|
echo "";
|
||||||
echo "===================================";
|
echo "===================================";
|
||||||
echo "Install golang-go...";
|
echo "Install dependencies...";
|
||||||
echo "===================================";
|
echo "===================================";
|
||||||
apt-get -y install golang-go;
|
apt-get -y install wget tar
|
||||||
if [ $? == 0 ] ; then
|
|
||||||
echo 'golang-go installed'
|
|
||||||
else
|
|
||||||
echo 'ERROR: Installing golang-go NOT succesfull!'
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
# Force the go command to fetch & use the 1.24 toolchain
|
|
||||||
go env -w GOTOOLCHAIN=go1.24.3
|
|
||||||
go version # should show: go1.22.0 ... +toolchain go1.24.3 (after it downloads)
|
|
||||||
echo "";
|
echo "";
|
||||||
echo "===================================";
|
echo "===================================";
|
||||||
echo "Installing mailhog...";
|
echo "Install Go 1.24.3...";
|
||||||
echo "===================================";
|
echo "===================================";
|
||||||
go install github.com/mailhog/MailHog@latest;
|
GO_VERSION=1.24.3
|
||||||
if [ $? == 0 ] ; then
|
wget https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz
|
||||||
echo "";
|
sudo rm -rf /usr/local/go
|
||||||
echo "===================================";
|
sudo tar -C /usr/local -xzf go${GO_VERSION}.linux-amd64.tar.gz
|
||||||
echo "Mailcatcher installed succesfully!";
|
export PATH=$PATH:/usr/local/go/bin
|
||||||
echo "===================================";
|
go version
|
||||||
echo "";
|
|
||||||
|
echo "";
|
||||||
|
echo "===================================";
|
||||||
|
echo "Installing MailHog...";
|
||||||
|
echo "===================================";
|
||||||
|
go install github.com/mailhog/MailHog@latest
|
||||||
|
|
||||||
|
if [ -f ~/go/bin/MailHog ]; then
|
||||||
|
echo "MailHog installed successfully"
|
||||||
else
|
else
|
||||||
echo 'ERROR: Installing Mailcatcher NOT succesfull!'
|
echo "ERROR: MailHog binary not found!"
|
||||||
exit
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
echo "";
|
||||||
echo "===================================";
|
echo "===================================";
|
||||||
echo "Copy Mailhog to bin...";
|
echo "Copy MailHog to /usr/local/bin...";
|
||||||
echo "===================================";
|
echo "===================================";
|
||||||
sudo cp ~/go/bin/MailHog /usr/local/bin/MailHog
|
sudo cp ~/go/bin/MailHog /usr/local/bin/MailHog
|
||||||
if [ $? == 0 ] ; then
|
|
||||||
echo 'Mailhog copied'
|
|
||||||
else
|
|
||||||
echo 'ERROR: Copy Mailhog NOT succesfull!'
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
echo "";
|
echo "";
|
||||||
echo "===================================";
|
echo "===================================";
|
||||||
echo "Create MailHog service...";
|
echo "Create MailHog service...";
|
||||||
echo "===================================";
|
echo "===================================";
|
||||||
sudo tee /etc/systemd/system/mailhog.service <<EOL
|
sudo tee /etc/systemd/system/mailhog.service > /dev/null <<EOL
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=MailHog
|
Description=MailHog
|
||||||
After=network.target
|
After=network.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
User=root
|
User=root
|
||||||
ExecStart=/usr/bin/env /usr/local/bin/MailHog > /dev/null 2>&1 &
|
ExecStart=/usr/local/bin/MailHog
|
||||||
|
Restart=always
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
EOL
|
EOL
|
||||||
|
|
||||||
|
systemctl daemon-reload
|
||||||
systemctl enable mailhog
|
systemctl enable mailhog
|
||||||
systemctl start mailhog
|
systemctl start mailhog
|
||||||
|
|
||||||
echo "";
|
echo "";
|
||||||
echo "===================================";
|
echo "===================================";
|
||||||
echo "Mailhog service created and started.";
|
echo "MailHog is running on http://localhost:8025";
|
||||||
|
echo "SMTP server on localhost:1025";
|
||||||
echo "===================================";
|
echo "===================================";
|
||||||
Reference in New Issue
Block a user