diff --git a/ct/zwavejs2mqtt-v3.sh b/ct/zwavejs2mqtt-v3.sh
index 6b54e7c1..99afdd8d 100644
--- a/ct/zwavejs2mqtt-v3.sh
+++ b/ct/zwavejs2mqtt-v3.sh
@@ -14,6 +14,23 @@ CM="${GN}✓${CL}"
 CROSS="${RD}✗${CL}"
 APP="Zwavejs2MQTT"
 NSAPP=$(echo ${APP,,} | tr -d ' ')
+set -o errexit
+set -o errtrace
+set -o nounset
+set -o pipefail
+shopt -s expand_aliases
+alias die='EXIT=$? LINE=$LINENO error_exit'
+trap die ERR
+
+function error_exit() {
+  trap - ERR
+  local reason="Unknown failure occurred."
+  local msg="${1:-$reason}"
+  local flag="${RD}‼ ERROR ${CL}$EXIT@$LINE"
+  echo -e "$flag $msg" 1>&2
+  exit $EXIT
+}
+
 while true; do
     read -p "This will create a New ${APP} LXC. Proceed(y/n)?" yn
     case $yn in