Update README.md
This commit is contained in:
66
README.md
66
README.md
@ -1,7 +1,14 @@
|
||||
<p align="center">
|
||||
<a href="https://tip.jhammah.com">
|
||||
<picture>
|
||||
<img src="https://user-images.githubusercontent.com/1128849/210187356-dfb7f1c5-ac2e-43aa-bb23-fc014280ae1f.svg" alt="Caddy" width="500">
|
||||
<img src="https://jhammah.com/wp-content/uploads/2025/06/Stalwart_logo1.png" alt="Caddy" width="500">
|
||||
</picture>
|
||||
</a>
|
||||
</p>
|
||||
<p align="center">
|
||||
<a href="https://tip.jhammah.com">
|
||||
<picture>
|
||||
<img src="https://jhammah.com/wp-content/uploads/2025/06/Haproxy-logo.png" alt="Caddy" width="500">
|
||||
</picture>
|
||||
</a>
|
||||
</p>
|
||||
@ -21,7 +28,7 @@
|
||||
|
||||
<br>
|
||||
|
||||
# Menu
|
||||
# Navigation
|
||||
|
||||
- [Prerequisite](#prerequisite)
|
||||
- [Install](#install)
|
||||
@ -37,11 +44,25 @@
|
||||
|
||||
# Prerequisite
|
||||
|
||||
<h4> This is the main Caddy yml file that you'll use to create your containers. Adjust settings as needed. </h4>
|
||||
- **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.**
|
||||
|
||||
<br>
|
||||
|
||||
@ -49,7 +70,7 @@
|
||||
|
||||
# Install
|
||||
|
||||
<h4> 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. </h4>
|
||||
<h4> This tutorial will show you how to install Stalwart Mail server as well as HAProxy so you can securely host your own email server. </h4>
|
||||
|
||||
<br>
|
||||
|
||||
@ -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.**
|
||||
|
||||
<p align="center">
|
||||
<a href="https://tip.jhammah.com">
|
||||
<picture>
|
||||
<img src="https://jhammah.com/wp-content/uploads/2025/05/caddy_yml_1.png" alt="Docker" width="1280">
|
||||
<img src="IMAGE GOES HERE IMAGE GOES HERE IMAGE GOES HERE IMAGE GOES HERE IMAGE GOES HERE " alt="Docker" width="1280">
|
||||
</picture>
|
||||
</a>
|
||||
</p>
|
||||
@ -107,7 +111,7 @@ image: caddy:latest
|
||||
<p align="center">
|
||||
<a href="https://tip.jhammah.com">
|
||||
<picture>
|
||||
<img src="https://jhammah.com/wp-content/uploads/2025/05/caddy_env_1.png" alt="Docker" width="1280">
|
||||
<img src="IMAGE GOES HERE IMAGE GOES HERE IMAGE GOES HERE IMAGE GOES HERE IMAGE GOES HERE " alt="Docker" width="1280">
|
||||
</picture>
|
||||
</a>
|
||||
</p>
|
||||
@ -131,7 +135,7 @@ image: caddy:latest
|
||||
<p align="center">
|
||||
<a href="https://tip.jhammah.com">
|
||||
<picture>
|
||||
<img src="https://jhammah.com/wp-content/uploads/2025/05/caddy_dockerfile_1.png" alt="Docker" width="1280">
|
||||
<img src="IMAGE GOES HERE IMAGE GOES HERE IMAGE GOES HERE IMAGE GOES HERE " alt="Docker" width="1280">
|
||||
</picture>
|
||||
</a>
|
||||
</p>
|
||||
@ -157,7 +161,7 @@ image: caddy:latest
|
||||
<p align="center">
|
||||
<a href="https://tip.jhammah.com">
|
||||
<picture>
|
||||
<img src="https://jhammah.com/wp-content/uploads/2025/05/caddy_caddyfile_1.png" alt="Docker" width="1280">
|
||||
<img src="IMAGE GOES HERE IMAGE GOES HERE IMAGE GOES HERE IMAGE GOES HERE " alt="Docker" width="1280">
|
||||
</picture>
|
||||
</a>
|
||||
</p>
|
||||
|
Reference in New Issue
Block a user