Back to Templates
Reloop logo

Reloop

v2026.10.06

Open-source email platform for transactional mail, campaigns and inbound, with its own KumoMTA delivery and spam filtering.

Deploy on Dokploy

Deploy Reloop on Dokploy

  1. Install Dokploy on your server if you haven't already.
  2. In your Dokploy panel, open a project and click Create Service → Template.
  3. Search for Reloop and click Create — Dokploy configures domains, environment variables, and volumes for you.

Alternatively, create a Compose service, go to Advanced → Import from Base64, and paste this payload:

base64
ewogICJjb21wb3NlIjogIiMgZG9rcGxveTogYWxsb3ctaG9zdC1wb3J0c1xueC1iYWNrZW5kLWVudjogJmJhY2tlbmQtZW52XG4gIFJFTE9PUF9WRVJTSU9OOiAke1JFTE9PUF9WRVJTSU9OOi1sYXRlc3R9XG4gIE5PREVfRU5WOiBwcm9kdWN0aW9uXG4gIEJBU0VfVVJMOiAke0JBU0VfVVJMfVxuICBIT1NUX0RPTUFJTjogJHtIT1NUX0RPTUFJTn1cbiAgVFJBQ0tJTkdfRE9NQUlOOiAke1RSQUNLSU5HX0RPTUFJTn1cbiAgVFJBQ0tJTkdfQkFTRV9VUkw6ICR7VFJBQ0tJTkdfQkFTRV9VUkx9XG4gIElOQk9VTkRfSE9TVE5BTUU6IGluYm91bmQuJHtIT1NUX0RPTUFJTn1cbiAgU01UUF9IT1NUTkFNRTogJHtTTVRQX0hPU1ROQU1FfVxuICBBVVRIX0lOVEVSTkFMX0JBU0VfVVJMOiBodHRwOi8vYXV0aDo4MDAwXG4gIFBHX1VSTDogcG9zdGdyZXNxbDovLyR7UE9TVEdSRVNfVVNFUn06JHtQT1NUR1JFU19QQVNTV09SRH1AcG9zdGdyZXM6NTQzMi8ke1BPU1RHUkVTX0RCOi1yZWxvb3B9XG4gIFJFRElTX1VSTDogcmVkaXM6Ly86JHtSRURJU19QQVNTV09SRH1AcmVkaXM6NjM3OVxuICBOQVRTX1VSTDogbmF0czovL25hdHM6NDIyMlxuICBCRVRURVJfQVVUSF9TRUNSRVQ6ICR7QkVUVEVSX0FVVEhfU0VDUkVUfVxuICBSRUxPT1BfSU5URVJOQUxfU0VDUkVUOiAke1JFTE9PUF9JTlRFUk5BTF9TRUNSRVR9XG4gIFRSQUNLSU5HX1NFQ1JFVDogJHtUUkFDS0lOR19TRUNSRVR9XG4gIFBSRUZFUkVOQ0VTX1NFQ1JFVDogJHtQUkVGRVJFTkNFU19TRUNSRVR9XG4gIFdFQkhPT0tfRU5DUllQVElPTl9LRVk6ICR7V0VCSE9PS19FTkNSWVBUSU9OX0tFWX1cbiAgV09SS0JFTkNIX1VTRVI6ICR7V09SS0JFTkNIX1VTRVJ9XG4gIFdPUktCRU5DSF9QQVNTOiAke1dPUktCRU5DSF9QQVNTfVxuICBBUFBfTkFNRTogJHtBUFBfTkFNRTotUmVsb29wfVxuICBESVNBQkxFX1NJR05VUDogJHtESVNBQkxFX1NJR05VUDotdHJ1ZX1cbiAgRElTQUJMRV9PUkdfQ1JFQVRJT046ICR7RElTQUJMRV9PUkdfQ1JFQVRJT046LWZhbHNlfVxuICBES0lNX1NFTEVDVE9SOiAke0RLSU1fU0VMRUNUT1I6LXJlbG9vcH1cbiAgRE5TX1JFU09MVkVSUzogJHtETlNfUkVTT0xWRVJTOi04LjguOC44LDguOC40LjR9XG4gIFJFTE9PUF9BUElfS0VZOiAke1JFTE9PUF9BUElfS0VZfVxuICBSRUxPT1BfU0VOREVSX0RPTUFJTjogJHtSRUxPT1BfU0VOREVSX0RPTUFJTn1cbiAgU01UUF9IT1NUOiAke1NNVFBfSE9TVH1cbiAgU01UUF9QT1JUOiAke1NNVFBfUE9SVDotNTg3fVxuICBTTVRQX1VTRVI6ICR7U01UUF9VU0VSfVxuICBTTVRQX1BBU1NXT1JEOiAke1NNVFBfUEFTU1dPUkR9XG4gIFNNVFBfU0VDVVJFOiAke1NNVFBfU0VDVVJFOi1mYWxzZX1cbiAgUzNfRU5EUE9JTlQ6ICR7UzNfRU5EUE9JTlR9XG4gIFMzX0FDQ0VTU19LRVk6ICR7UzNfQUNDRVNTX0tFWX1cbiAgUzNfU0VDUkVUX0tFWTogJHtTM19TRUNSRVRfS0VZfVxuICBTM19CVUNLRVQ6ICR7UzNfQlVDS0VUOi1yZWxvb3AtdXBsb2Fkc31cbiAgUzNfUkVHSU9OOiAke1MzX1JFR0lPTjotdXMtZWFzdC0xfVxuICBTM19GT1JDRV9QQVRIX1NUWUxFOiBcInRydWVcIlxuICBLVU1PTVRBX0hUVFBfVVJMOiBodHRwOi8vc210cDo4MDAwXG4gIEtVTU9NVEFfV0VCSE9PS19VUkw6IGh0dHA6Ly9kb21haW46ODAxMS9hcGkvZG9tYWluXG4gIEtVTU9NVEFfQ0hFQ0tfUkVDSVBJRU5UX1VSTDogaHR0cDovL2RvbWFpbjo4MDExL2FwaS9kb21haW5cbiAgS1VNT01UQV9SU1BBTURfVVJMOiBodHRwOi8vc3BhbToxMTMzMy9jaGVja3YyXG4gIEtVTU9NVEFfTUlOX0ZSRUVfU1BBQ0U6ICR7S1VNT01UQV9NSU5fRlJFRV9TUEFDRTotNSV9XG4gIEtVTU9NVEFfTUlOX0ZSRUVfSU5PREVTOiAke0tVTU9NVEFfTUlOX0ZSRUVfSU5PREVTOi0wfVxuXG54LWJhY2tlbmQtZGVwZW5kczogJmJhY2tlbmQtZGVwZW5kc1xuICBwb3N0Z3JlczpcbiAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeVxuICByZWRpczpcbiAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeVxuICBuYXRzOlxuICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5XG4gIG1pZ3JhdGU6XG4gICAgY29uZGl0aW9uOiBzZXJ2aWNlX2NvbXBsZXRlZF9zdWNjZXNzZnVsbHlcblxuc2VydmljZXM6XG4gIHByb3h5OlxuICAgIGltYWdlOiBjYWRkeToyLWFscGluZVxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgdm9sdW1lczpcbiAgICAgIC0gLi4vZmlsZXMvQ2FkZHlmaWxlOi9ldGMvY2FkZHkvQ2FkZHlmaWxlOnJvXG5cbiAgbGlua3M6XG4gICAgaW1hZ2U6IHJlbG9vcHNoL2ZlLWxpbmtzQHNoYTI1Njo4YTIyZmRlMjFhNjU2YzI1MTYzZTJiODU2YTg1NjA1M2M1ZGU5MWNiYzQ5NTNjYzIzZWQwMzRjMDgxZWVkZmE1XG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIC0gSE9TVE5BTUU9MC4wLjAuMFxuICAgICAgLSBQT1JUPTMwMDVcbiAgICAgIC0gSU5URVJOQUxfQVBJX1VSTD1odHRwOi8vY29udGFjdHM6ODAxNC9hcGkvY29udGFjdHNcbiAgICAgIC0gSU5URVJOQUxfTUFJTF9BUElfVVJMPWh0dHA6Ly9tYWlsOjgwMTUvYXBpL21haWxcblxuICBkYXNoYm9hcmQ6XG4gICAgaW1hZ2U6IHJlbG9vcHNoL2ZlLWRhc2hib2FyZEBzaGEyNTY6ZGQyMzY5ZDJmMGQ3ZmU4MzY2NjRhZTQ5YjJiNDQ5MmY5MGVlNjU0ZGQ4YWY3YzgxOWU3Y2EwN2U0NjliNThkY1xuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICBIT1NUTkFNRTogMC4wLjAuMFxuICAgICAgUE9SVDogMzAwMFxuICAgICAgU01UUF9IT1NUTkFNRTogJHtTTVRQX0hPU1ROQU1FfVxuXG4gIHBvc3RncmVzOlxuICAgIGltYWdlOiBwb3N0Z3JlczoxNy1hbHBpbmVcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuICAgIGVudmlyb25tZW50OlxuICAgICAgUE9TVEdSRVNfREI6ICR7UE9TVEdSRVNfREI6LXJlbG9vcH1cbiAgICAgIFBPU1RHUkVTX1VTRVI6ICR7UE9TVEdSRVNfVVNFUn1cbiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAke1BPU1RHUkVTX1BBU1NXT1JEfVxuICAgIHZvbHVtZXM6XG4gICAgICAtIHBvc3RncmVzLWRhdGE6L3Zhci9saWIvcG9zdGdyZXNxbC9kYXRhXG4gICAgaGVhbHRoY2hlY2s6XG4gICAgICB0ZXN0OiBbXCJDTUQtU0hFTExcIiwgXCJwZ19pc3JlYWR5IC1VICQke1BPU1RHUkVTX1VTRVJ9IC1kICQke1BPU1RHUkVTX0RCfVwiXVxuICAgICAgaW50ZXJ2YWw6IDEwc1xuICAgICAgdGltZW91dDogNXNcbiAgICAgIHJldHJpZXM6IDEyXG4gICAgICBzdGFydF9wZXJpb2Q6IDMwc1xuXG4gIHJlZGlzOlxuICAgIGltYWdlOiByZWRpczo3LWFscGluZVxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgY29tbWFuZDpcbiAgICAgIC0gcmVkaXMtc2VydmVyXG4gICAgICAtIC0tcmVxdWlyZXBhc3NcbiAgICAgIC0gJHtSRURJU19QQVNTV09SRH1cbiAgICAgIC0gLS1hcHBlbmRvbmx5XG4gICAgICAtIFwieWVzXCJcbiAgICAgIC0gLS1kaXJcbiAgICAgIC0gL2RhdGFcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIFJFRElTX1BBU1NXT1JEOiAke1JFRElTX1BBU1NXT1JEfVxuICAgIHZvbHVtZXM6XG4gICAgICAtIHJlZGlzLWRhdGE6L2RhdGFcbiAgICBoZWFsdGhjaGVjazpcbiAgICAgIHRlc3Q6IFtcIkNNRC1TSEVMTFwiLCBcInJlZGlzLWNsaSAtLW5vLWF1dGgtd2FybmluZyAtYSBcXFwiJCR7UkVESVNfUEFTU1dPUkR9XFxcIiBwaW5nIHwgZ3JlcCAtcSBQT05HXCJdXG4gICAgICBpbnRlcnZhbDogMTBzXG4gICAgICB0aW1lb3V0OiA1c1xuICAgICAgcmV0cmllczogMTJcbiAgICAgIHN0YXJ0X3BlcmlvZDogMTBzXG5cbiAgbmF0czpcbiAgICBpbWFnZTogbmF0czoyLjEwLWFscGluZVxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgY29tbWFuZDogW1wiLWpzXCIsIFwiLXNkXCIsIFwiL2RhdGFcIiwgXCItbVwiLCBcIjgyMjJcIl1cbiAgICB2b2x1bWVzOlxuICAgICAgLSBuYXRzLWRhdGE6L2RhdGFcbiAgICBoZWFsdGhjaGVjazpcbiAgICAgIHRlc3Q6IFtcIkNNRFwiLCBcIndnZXRcIiwgXCItLXNwaWRlclwiLCBcIi1xXCIsIFwiaHR0cDovLzEyNy4wLjAuMTo4MjIyL2hlYWx0aHpcIl1cbiAgICAgIGludGVydmFsOiAxMHNcbiAgICAgIHRpbWVvdXQ6IDVzXG4gICAgICByZXRyaWVzOiAxMlxuICAgICAgc3RhcnRfcGVyaW9kOiAxMHNcblxuICBtaWdyYXRlOlxuICAgIGltYWdlOiByZWxvb3BzaC9iZS1hdXRoQHNoYTI1Njo3NDFlZjkzNGVjNTlhYTE3M2Y4ZGNmYTk4MGMxNjNjMTA3ZTZlNTY5Mzc4Njc3NzMyNmVhZjkwZTQ5Y2I0N2M1XG4gICAgcmVzdGFydDogXCJub1wiXG4gICAgd29ya2luZ19kaXI6IC9hcHAvcGFja2FnZXMvZGJcbiAgICBlbnRyeXBvaW50OiBbXCIvYXBwL25vZGVfbW9kdWxlcy8uYmluL2RyaXp6bGUta2l0XCJdXG4gICAgY29tbWFuZDogW1wicHVzaFwiLCBcIi0tZm9yY2VcIl1cbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIFBHX1VSTDogcG9zdGdyZXNxbDovLyR7UE9TVEdSRVNfVVNFUn06JHtQT1NUR1JFU19QQVNTV09SRH1AcG9zdGdyZXM6NTQzMi8ke1BPU1RHUkVTX0RCOi1yZWxvb3B9XG4gICAgZGVwZW5kc19vbjpcbiAgICAgIHBvc3RncmVzOlxuICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeVxuXG4gIGF1dGg6XG4gICAgaW1hZ2U6IHJlbG9vcHNoL2JlLWF1dGhAc2hhMjU2Ojc0MWVmOTM0ZWM1OWFhMTczZjhkY2ZhOTgwYzE2M2MxMDdlNmU1NjkzNzg2Nzc3MzI2ZWFmOTBlNDljYjQ3YzVcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuICAgIGVudmlyb25tZW50OlxuICAgICAgPDw6ICpiYWNrZW5kLWVudlxuICAgICAgUE9SVDogODAwMFxuICAgICAgU0VUVVBfTU9ERTogJHtTRVRVUF9NT0RFOi10cnVlfVxuICAgICAgQURNSU5fU0VUVVBfS0VZOiAke0FETUlOX1NFVFVQX0tFWX1cbiAgICB2b2x1bWVzOlxuICAgICAgLSByZWxvb3Atc2V0dXA6L3J1bi9yZWxvb3BcbiAgICBkZXBlbmRzX29uOiAqYmFja2VuZC1kZXBlbmRzXG5cbiAgZG9tYWluOlxuICAgIGltYWdlOiByZWxvb3BzaC9iZS1kb21haW5Ac2hhMjU2OmNiMTJlMzcyMjFhNjk3Mjc4ODIyODE5ZmRmNGZkMGFkYTJiYjJmMTNlMjk3OWJlNzg5YzljNDRlZTA5YTNmNTZcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuICAgIGVudmlyb25tZW50OlxuICAgICAgPDw6ICpiYWNrZW5kLWVudlxuICAgICAgUE9SVDogODAxMVxuICAgIGRlcGVuZHNfb246ICpiYWNrZW5kLWRlcGVuZHNcblxuICBhcGkta2V5OlxuICAgIGltYWdlOiByZWxvb3BzaC9iZS1hcGkta2V5QHNoYTI1Njo1MzVmOTgzN2QzOWFjZGQ3ZTE1NWExNDc1MmIxYWI2ZTNjYmVmMDYzMzFjZjI2NjM0NTc3ZmY4MmEwMTU2NTcyXG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIDw8OiAqYmFja2VuZC1lbnZcbiAgICAgIFBPUlQ6IDgwMTJcbiAgICBkZXBlbmRzX29uOiAqYmFja2VuZC1kZXBlbmRzXG5cbiAgd2ViaG9vazpcbiAgICBpbWFnZTogcmVsb29wc2gvYmUtd2ViaG9va0BzaGEyNTY6NjQ0YTZiNzk3NTZmNTdjMDQ1Yzg1NzJjNDJiZWU2ZGZiNmIzMTY2M2VlMDhkMjFmMjU2NWNlYWQ0ZGZjMWNhOVxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICA8PDogKmJhY2tlbmQtZW52XG4gICAgICBQT1JUOiA4MDEzXG4gICAgZGVwZW5kc19vbjogKmJhY2tlbmQtZGVwZW5kc1xuXG4gIGNvbnRhY3RzOlxuICAgIGltYWdlOiByZWxvb3BzaC9iZS1jb250YWN0c0BzaGEyNTY6NDNkYTBiMzczZTI3NzdmZGM3YWY5N2Q5MmZkYjkxNjMyMGEyN2UyZmZkZWE2MWRmNjliY2E0Nzc3MjJiMmRmYVxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICA8PDogKmJhY2tlbmQtZW52XG4gICAgICBQT1JUOiA4MDE0XG4gICAgZGVwZW5kc19vbjogKmJhY2tlbmQtZGVwZW5kc1xuXG4gIG1haWw6XG4gICAgaW1hZ2U6IHJlbG9vcHNoL2JlLW1haWxAc2hhMjU2OmM0YjJmZTBkZTg0N2E2MDZmMTJmZTBkNTBhZGFkZGE5NzE5MTM1MjA1Y2IyMjdjNmUxMmM2YTZmMDg4OWFhZThcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuICAgIGVudmlyb25tZW50OlxuICAgICAgPDw6ICpiYWNrZW5kLWVudlxuICAgICAgUE9SVDogODAxNVxuICAgIGRlcGVuZHNfb246ICpiYWNrZW5kLWRlcGVuZHNcblxuICBsb2dzOlxuICAgIGltYWdlOiByZWxvb3BzaC9iZS1sb2dzQHNoYTI1NjozYzBiZTExOGM3ZGYwZWJkNzZlMjRlZDY1ZGUwMTQ5ODBmOTZhOGMxNGMyNzgzMjMxYTM5YjBjNTRjNDA2NWUwXG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIDw8OiAqYmFja2VuZC1lbnZcbiAgICAgIFBPUlQ6IDgwMTZcbiAgICBkZXBlbmRzX29uOiAqYmFja2VuZC1kZXBlbmRzXG5cbiAgd29ya2Zsb3c6XG4gICAgaW1hZ2U6IHJlbG9vcHNoL2JlLXdvcmtmbG93QHNoYTI1NjpkN2Q3NWU5MTQ1ODkxYjcxNjdiNDJiNGZiMWVjNDQxYzUzMzYxZTgyNWU1ZmRmMGQ3Mjk2MmVmOTVkM2Q1YjU2XG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIDw8OiAqYmFja2VuZC1lbnZcbiAgICAgIFBPUlQ6IDgwMTdcbiAgICBkZXBlbmRzX29uOiAqYmFja2VuZC1kZXBlbmRzXG5cbiAgdXBsb2FkOlxuICAgIGltYWdlOiByZWxvb3BzaC9iZS11cGxvYWRAc2hhMjU2OjIyNjMyY2JiYzY4NmZhMGM3NjZhMGVjZDMxNmI0YmRlYjMwOTdmZTU2NTJkM2I4ZTE4MzEzM2ZmODA1NWEyOTlcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuICAgIGVudmlyb25tZW50OlxuICAgICAgPDw6ICpiYWNrZW5kLWVudlxuICAgICAgUE9SVDogODAxOFxuICAgIGRlcGVuZHNfb246ICpiYWNrZW5kLWRlcGVuZHNcblxuICB0ZW1wbGF0ZTpcbiAgICBpbWFnZTogcmVsb29wc2gvYmUtdGVtcGxhdGVAc2hhMjU2Ojk3MzQ5MzlhMDRiMjExYWE5OWM5NmQ4OTQ0NmNiNWIyOGJhNWUwNjVhMmI4Mzg4YTg4YWU2MzRjNTBmNWY3N2RcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuICAgIGVudmlyb25tZW50OlxuICAgICAgPDw6ICpiYWNrZW5kLWVudlxuICAgICAgUE9SVDogODAxOVxuICAgIGRlcGVuZHNfb246ICpiYWNrZW5kLWRlcGVuZHNcblxuICBjYW1wYWlnbnM6XG4gICAgaW1hZ2U6IHJlbG9vcHNoL2JlLWNhbXBhaWduc0BzaGEyNTY6NDQ2Mjg3YjBkYzg4Zjc3Y2E1YWMxMjE5OWJkYTYzN2UxZTIyMTZhMzhhNDdlMjgxYmUxNjFkYmE0ZmVhMzYyNFxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICA8PDogKmJhY2tlbmQtZW52XG4gICAgICBQT1JUOiA4MDI3XG4gICAgZGVwZW5kc19vbjogKmJhY2tlbmQtZGVwZW5kc1xuXG4gIGluYm94OlxuICAgIGltYWdlOiByZWxvb3BzaC9iZS1pbmJveEBzaGEyNTY6NGQ2ZmUxNjI5OGZiZWM4NTljODZjYzZhYzU1ZjI4MDQyMjNlOWQxYzlmZjUyYWZjOTJjMDE4NDViOTlhNWY3NFxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICA8PDogKmJhY2tlbmQtZW52XG4gICAgICBQT1JUOiA4MDI4XG4gICAgZGVwZW5kc19vbjogKmJhY2tlbmQtZGVwZW5kc1xuXG4gIGVtYWlsOlxuICAgIGltYWdlOiByZWxvb3BzaC9iZS1lbWFpbEBzaGEyNTY6NGNhZjk3Zjg0ZDdmYWY3YmY0NWY2OWUxMmI4MjI2ZDcyNGIwZTU4YzAyMDVjZDgyZDFlZjcwMzFmNGVhOGIyZFxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICA8PDogKmJhY2tlbmQtZW52XG4gICAgICBQT1JUOiA4MDIyXG4gICAgZGVwZW5kc19vbjogKmJhY2tlbmQtZGVwZW5kc1xuXG4gIHNwYW06XG4gICAgaW1hZ2U6IHJlbG9vcHNoL2JlLXNwYW1Ac2hhMjU2OjRmY2QyNjIzNTRkZGIxMWVkNjdkOGNlOGY0YjVmMDhiMjc0ZjIyYThkYTY5ODcyMzNmYjE0ODZkOTE1MGE1NDBcbiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZFxuICAgIGVudmlyb25tZW50OlxuICAgICAgUlNQQU1EX1JFRElTX1NFUlZFUlM6IHJlZGlzOjYzNzlcbiAgICAgIFJTUEFNRF9SRURJU19QQVNTV09SRDogJHtSRURJU19QQVNTV09SRH1cbiAgICB2b2x1bWVzOlxuICAgICAgLSByc3BhbWQtZGF0YTovdmFyL2xpYi9yc3BhbWRcbiAgICBkZXBlbmRzX29uOlxuICAgICAgcmVkaXM6XG4gICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5XG5cbiAgc210cDpcbiAgICBpbWFnZTogcmVsb29wc2gvYmUtc210cEBzaGEyNTY6Njg5YjQ5Zjc2MmVlMGQ1ZjRjMzNiYmZkMDczZjdlYmViNWNiYWUyNzE5NGMzNjI2OTg4M2JlN2RhNDE1YTg2ZVxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICA8PDogKmJhY2tlbmQtZW52XG4gICAgICBIT1NUTkFNRTogJHtTTVRQX0hPU1ROQU1FfVxuICAgIHBvcnRzOlxuICAgICAgLSBcIjQ2NTo0NjVcIlxuICAgICAgLSBcIjU4Nzo1ODdcIlxuICAgIHZvbHVtZXM6XG4gICAgICAtIHNtdHAtZGF0YTovdmFyL3Nwb29sL2t1bW9tdGEvZGF0YVxuICAgICAgLSBzbXRwLW1ldGE6L3Zhci9zcG9vbC9rdW1vbXRhL21ldGFcbiAgICBkZXBlbmRzX29uOlxuICAgICAgbmF0czpcbiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHlcbiAgICAgIGRvbWFpbjpcbiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX3N0YXJ0ZWRcbiAgICAgIGxvZ3M6XG4gICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9zdGFydGVkXG4gICAgICBjb250YWN0czpcbiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX3N0YXJ0ZWRcblxuICBpbmJvdW5kOlxuICAgIGltYWdlOiByZWxvb3BzaC9iZS1pbmJvdW5kQHNoYTI1NjoyOGM2Y2E4MGQ1MWQzYzgzMzE5ZGRjM2MwMGIzNzA2NjhhMTc3OWFmMTM0YTJjNjBlN2RhZWRkMjNlNzY5MWZjXG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIDw8OiAqYmFja2VuZC1lbnZcbiAgICBwb3J0czpcbiAgICAgIC0gXCIyNToyNVwiXG4gICAgdm9sdW1lczpcbiAgICAgIC0gaW5ib3VuZC1kYXRhOi92YXIvc3Bvb2wva3Vtb210YS9kYXRhXG4gICAgICAtIGluYm91bmQtbWV0YTovdmFyL3Nwb29sL2t1bW9tdGEvbWV0YVxuICAgIGRlcGVuZHNfb246XG4gICAgICBuYXRzOlxuICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeVxuICAgICAgc3BhbTpcbiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX3N0YXJ0ZWRcblxudm9sdW1lczpcbiAgcG9zdGdyZXMtZGF0YTpcbiAgcmVkaXMtZGF0YTpcbiAgbmF0cy1kYXRhOlxuICByZWxvb3Atc2V0dXA6XG4gIHJzcGFtZC1kYXRhOlxuICBzbXRwLWRhdGE6XG4gIHNtdHAtbWV0YTpcbiAgaW5ib3VuZC1kYXRhOlxuICBpbmJvdW5kLW1ldGE6IiwKICAiY29uZmlnIjogIlt2YXJpYWJsZXNdXG5tYWluX2RvbWFpbiA9IFwiJHtkb21haW59XCJcbmxpbmtzX2RvbWFpbiA9IFwiJHtkb21haW59XCJcbnBvc3RncmVzX3Bhc3N3b3JkID0gXCIke3Bhc3N3b3JkOjMyfVwiXG5yZWRpc19wYXNzd29yZCA9IFwiJHtwYXNzd29yZDozMn1cIlxuXG5bY29uZmlnXVxuW1tjb25maWcuZG9tYWluc11dXG5zZXJ2aWNlTmFtZSA9IFwicHJveHlcIlxucG9ydCA9IDgwXG5ob3N0ID0gXCIke21haW5fZG9tYWlufVwiXG5odHRwcyA9IHRydWVcblxuW1tjb25maWcuZG9tYWluc11dXG5zZXJ2aWNlTmFtZSA9IFwibGlua3NcIlxucG9ydCA9IDMwMDVcbmhvc3QgPSBcIiR7bGlua3NfZG9tYWlufVwiXG5odHRwcyA9IHRydWVcblxuW2NvbmZpZy5lbnZdXG5SRUxPT1BfVkVSU0lPTiA9IFwibGF0ZXN0XCJcbkJBU0VfVVJMID0gXCJodHRwczovLyR7bWFpbl9kb21haW59XCJcbkhPU1RfRE9NQUlOID0gXCIke21haW5fZG9tYWlufVwiXG5TTVRQX0hPU1ROQU1FID0gXCIke21haW5fZG9tYWlufVwiXG5UUkFDS0lOR19ET01BSU4gPSBcIiR7bGlua3NfZG9tYWlufVwiXG5UUkFDS0lOR19CQVNFX1VSTCA9IFwiaHR0cHM6Ly8ke2xpbmtzX2RvbWFpbn1cIlxuUE9TVEdSRVNfVVNFUiA9IFwicmVsb29wXCJcblBPU1RHUkVTX1BBU1NXT1JEID0gXCIke3Bvc3RncmVzX3Bhc3N3b3JkfVwiXG5QT1NUR1JFU19EQiA9IFwicmVsb29wXCJcblJFRElTX1BBU1NXT1JEID0gXCIke3JlZGlzX3Bhc3N3b3JkfVwiXG5CRVRURVJfQVVUSF9TRUNSRVQgPSBcIiR7cGFzc3dvcmQ6NjR9XCJcblJFTE9PUF9JTlRFUk5BTF9TRUNSRVQgPSBcIiR7cGFzc3dvcmQ6NjR9XCJcblRSQUNLSU5HX1NFQ1JFVCA9IFwiJHtwYXNzd29yZDo2NH1cIlxuUFJFRkVSRU5DRVNfU0VDUkVUID0gXCIke3Bhc3N3b3JkOjY0fVwiXG5XRUJIT09LX0VOQ1JZUFRJT05fS0VZID0gXCIke2hhc2g6NjR9XCJcbkFETUlOX1NFVFVQX0tFWSA9IFwiJHtwYXNzd29yZDo2NH1cIlxuU0VUVVBfTU9ERSA9IFwidHJ1ZVwiXG5XT1JLQkVOQ0hfVVNFUiA9IFwiJHt1c2VybmFtZX1cIlxuV09SS0JFTkNIX1BBU1MgPSBcIiR7cGFzc3dvcmQ6MzJ9XCJcbkFQUF9OQU1FID0gXCJSZWxvb3BcIlxuRElTQUJMRV9TSUdOVVAgPSBcInRydWVcIlxuRElTQUJMRV9PUkdfQ1JFQVRJT04gPSBcImZhbHNlXCJcblJFTE9PUF9TRU5ERVJfRE9NQUlOID0gXCJcIlxuUkVMT09QX0FQSV9LRVkgPSBcIlwiXG5TTVRQX0hPU1QgPSBcIlwiXG5TTVRQX1BPUlQgPSBcIjU4N1wiXG5TTVRQX1VTRVIgPSBcIlwiXG5TTVRQX1BBU1NXT1JEID0gXCJcIlxuU01UUF9TRUNVUkUgPSBcImZhbHNlXCJcblMzX0VORFBPSU5UID0gXCJcIlxuUzNfQUNDRVNTX0tFWSA9IFwiXCJcblMzX1NFQ1JFVF9LRVkgPSBcIlwiXG5TM19CVUNLRVQgPSBcInJlbG9vcC11cGxvYWRzXCJcblMzX1JFR0lPTiA9IFwidXMtZWFzdC0xXCJcblxuW1tjb25maWcubW91bnRzXV1cbmZpbGVQYXRoID0gXCJDYWRkeWZpbGVcIlxuY29udGVudCA9ICcnJ1xue1xuXHRhdXRvX2h0dHBzIG9mZlxuXHRzZXJ2ZXJzIHtcblx0XHR0cnVzdGVkX3Byb3hpZXMgc3RhdGljIHByaXZhdGVfcmFuZ2VzXG5cdH1cbn1cblxuaHR0cDovLyB7XG5cdGVuY29kZSB6c3RkIGd6aXBcblxuXHRoYW5kbGUgL2Rhc2hib2FyZCoge1xuXHRcdHJldmVyc2VfcHJveHkgZGFzaGJvYXJkOjMwMDBcblx0fVxuXHRoYW5kbGUgL2RvY3MqIHtcblx0XHRyZWRpciBodHRwczovL3JlbG9vcC5zaHt1cml9IDMwMlxuXHR9XG5cdGhhbmRsZSAvcHJlZmVyZW5jZXMqIHtcblx0XHRyZXZlcnNlX3Byb3h5IGxpbmtzOjMwMDVcblx0fVxuXHRoYW5kbGUgL3JlZGlyZWN0KiB7XG5cdFx0cmV2ZXJzZV9wcm94eSBsaW5rczozMDA1XG5cdH1cblxuXHRoYW5kbGUgL2FwaS9hdXRoKiB7XG5cdFx0cmV2ZXJzZV9wcm94eSBhdXRoOjgwMDBcblx0fVxuXHRoYW5kbGUgL2FwaS9kb21haW4qIHtcblx0XHRyZXZlcnNlX3Byb3h5IGRvbWFpbjo4MDExXG5cdH1cblx0aGFuZGxlIC9hcGkvYXBpLWtleSoge1xuXHRcdHJldmVyc2VfcHJveHkgYXBpLWtleTo4MDEyXG5cdH1cblx0aGFuZGxlIC9hcGkvd2ViaG9vayoge1xuXHRcdHJldmVyc2VfcHJveHkgd2ViaG9vazo4MDEzXG5cdH1cblx0aGFuZGxlIC9hcGkvY29udGFjdHMqIHtcblx0XHRyZXZlcnNlX3Byb3h5IGNvbnRhY3RzOjgwMTRcblx0fVxuXHRoYW5kbGUgL2FwaS9tYWlsKiB7XG5cdFx0cmV2ZXJzZV9wcm94eSBtYWlsOjgwMTVcblx0fVxuXHRoYW5kbGUgL2FwaS9sb2dzKiB7XG5cdFx0cmV2ZXJzZV9wcm94eSBsb2dzOjgwMTZcblx0fVxuXHRoYW5kbGUgL2FwaS93b3JrZmxvdyoge1xuXHRcdHJldmVyc2VfcHJveHkgd29ya2Zsb3c6ODAxN1xuXHR9XG5cdGhhbmRsZSAvYXBpL3VwbG9hZCoge1xuXHRcdHJldmVyc2VfcHJveHkgdXBsb2FkOjgwMThcblx0fVxuXHRoYW5kbGUgL2FwaS90ZW1wbGF0ZSoge1xuXHRcdHJldmVyc2VfcHJveHkgdGVtcGxhdGU6ODAxOVxuXHR9XG5cdGhhbmRsZSAvYXBpL2NhbXBhaWducyoge1xuXHRcdHJldmVyc2VfcHJveHkgY2FtcGFpZ25zOjgwMjdcblx0fVxuXHRoYW5kbGUgL2FwaS9pbmJveCoge1xuXHRcdHJldmVyc2VfcHJveHkgaW5ib3g6ODAyOFxuXHR9XG5cdGhhbmRsZSAvYXBpL2VtYWlsKiB7XG5cdFx0cmV2ZXJzZV9wcm94eSBlbWFpbDo4MDIyXG5cdH1cblxuXHRAcmVtb3ZlZCBwYXRoIC9hcGkvY3JlZGl0cyogL2FwaS90b29sKiAvYXBpL2FkbWluKlxuXHRoYW5kbGUgQHJlbW92ZWQge1xuXHRcdHJlc3BvbmQgNDA0XG5cdH1cblxuXHRoYW5kbGUge1xuXHRcdHJlZGlyIC8qIC9kYXNoYm9hcmQgMzAyXG5cdH1cbn1cbicnJyIKfQ==

Configuration

The exact Docker Compose and template configuration this template deploys.

Instructions

Reloop

Before you deploy

  • x86_64 server with 8 GB of RAM and 50 GB of disk. The dashboard and links images are amd64 only, and the images take about 22 GB once unpacked.
  • Ports 25, 465 and 587 must be free on the host, inbound and outbound. Many providers block port 25 by default, so ask yours to open it.

Domains

The template creates two domains. Replace both before the first deploy, because Reloop writes them into the DNS records it shows for every sending domain:

ServiceExampleServes
proxyreloop.example.comDashboard and API
linkslink.reloop.example.comClick and open tracking, unsubscribe pages

Then update BASE_URL, HOST_DOMAIN, SMTP_HOSTNAME, TRACKING_DOMAIN and TRACKING_BASE_URL under Environment to match. Keep HTTPS enabled on both domains.

Point these records at the server:

text

inbound. is the MX target for mail your verified domains receive. Also ask your provider for a PTR record on the server IP that resolves to reloop.example.com.

First sign-in

  1. Copy ADMIN_SETUP_KEY from Environment.
  2. Open https://reloop.example.com/dashboard/setup and paste it as the setup key.
  3. Create the first administrator and organization.

The key works once. Setup signs you in for 7 days; after that Reloop emails a sign-in code, so set RELOOP_SENDER_DOMAIN and the SMTP_* variables before then.

Ports

PortServiceProtocol
25inboundSMTP with STARTTLS for received mail
587smtpSubmission with STARTTLS
465smtpSame STARTTLS listener as 587

Both mail services use a self-signed certificate.

Secrets

Do not change the generated secrets after the first deploy. The database password is fixed once Postgres initialises, changing TRACKING_SECRET or PREFERENCES_SECRET breaks links in mail already sent, and changing WEBHOOK_ENCRYPTION_KEY breaks every existing webhook signature.

Full guide: https://reloop.sh/docs/self-host/dokploy

Related Templates

Self-host Reloop in minutes

Dokploy is a free, open source deployment platform. Deploy Reloop and 567+ other templates on your own infrastructure with a single click.