From d5111b7fcf5300a7f7fd69e9ac39ea4446f10298 Mon Sep 17 00:00:00 2001 From: Josh Date: Thu, 12 Jun 2025 14:16:02 +0000 Subject: [PATCH] Update README.md --- README.md | 66 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 35 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 8493526..b390caf 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,14 @@

- Caddy + Caddy + + +

+

+ + + Caddy

@@ -21,7 +28,7 @@
-# Menu +# Navigation - [Prerequisite](#prerequisite) - [Install](#install) @@ -37,11 +44,25 @@ # Prerequisite -

This is the main Caddy yml file that you'll use to create your containers. Adjust settings as needed.

+- **Here are all the things you need to make sure you have before starting this tutorial.** -- **If you have Cloudflare managing your domain, make the the TLS/SSL encryption mode is set to Full (Strict) and NOT Flexible.** +- **1. You should already have Caddy installed and fully working.** -- **When adding CNAME entries to your domains, make sure Cloudflare's proxy is disabled for each CNAME record.** +- **2. You should already have a Cloudflare account managing your domain.** + +- **3. You should already have a Cloudflare API Token.** + +- **4. You should already have the CNAME records 'mail.yourdomain.com' & 'webmail.yourdomain.com' created.** + +- **5. You should already have your Caddyfile routing 'mail.yourdomain.com' to port 8404.** + +- **6. You should already have your Caddyfile routing 'webmail.yourdomain.com' to port 680.** + +- **7. You should already have an smtp2go.com account created and setup.** + +- **8. You should use an advanced text editor like Notepadd++ or something like it that's designed for coding.** + +- **9. You should already have ports 25, 80, 110, 143, 443, 465, 587, 993, & 4190 opened inside your router pointing to your host machine's IP address.**
@@ -49,7 +70,7 @@ # Install -

This tutorial will show you how to install Caddy with with packages automatically with xcaddy as a Docker container. Installing extra packages is optional but it's good to have a few of them.

+

This tutorial will show you how to install Stalwart Mail server as well as HAProxy so you can securely host your own email server.


@@ -59,37 +80,20 @@ ## Configuring docker-compose.yml file -* **This is the main Caddy docker-compose.yml file that you Will used to create your container.** - -* **Instead of specifying an image under the caddy services, we're going to specify a Docker file In which we Tell it how to build a custom caddy image for us.** - -* **If you DO NOT want to build a custom caddy image and just use the default caddy image, you can delete this section that says:** - -```yml -build: - context: . - dockerfile: dockerfile.caddy -``` -**and replace it with:** - -```yml -image: caddy:latest -``` +* **This is the docker-compose.yml file that you will use to create your container. It will be installing HAProxy and then including Stalwart and Roundcube's yml files, installing them afterwards.** * **It's always going to restart unless we manually stop it.** -* **We're telling it that it has env file to reference.** +* **We are mapping it to ports 25, 80, 110, 143, 443, 465, 587, 993, & 4190.** -* **We are mapping it to ports 80 and 443.** +* **We're also making HAProxy's container depend on Stalwart's container** -* **We are creating five volumes for it.** - -* **And finally we are creating a custom caddy Network.** +* **And finally we are creating a custom hao-network for these containers.**

- Docker + Docker

@@ -107,7 +111,7 @@ image: caddy:latest

- Docker + Docker

@@ -131,7 +135,7 @@ image: caddy:latest

- Docker + Docker

@@ -157,7 +161,7 @@ image: caddy:latest

- Docker + Docker