Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil.
-
No spam.
-
Posts are to be related to self-hosting.
-
Don't duplicate the full text of your blog or readme if you're providing a link.
-
Submission headline should match the article title.
-
No trolling.
-
Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.
-
AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
view the rest of the comments
Short answer: IMAP and the
mbsynctool (aka "isync"). It can sync between two IMAP accounts or between IMAP and local storage (either/both ways).If you just want syncing between two IMAP accounts there's also
imapsync, which is available both as a program and as an online service run by the guy who maintains the program, priced as "pay what you want", which can migrate your inbox on the fly to another service.What I've done myself is to run mbsync periodically (made myself a custom Alpine image with cron and mbsync) to bring emails over. Added an IMAP server container on top of the local copy of the emails (tons of options, Dovecot is popular). Added a webmail app behind reverse proxy, talking to the IMAP server on a private docker network (Roundcube). And a Borg Backup job to take an extra backup (incremental, deduplicated and encrypted) of the email archive.
In theory I could also connect the webmail to the SMTP of whatever email provider I'm currently using and be able to use it to also send. I don't do that because I have email clients connected to the provider on both desktop and phone so it's not a requirement, but I could if I wanted to.
This approach lets me periodically trim down the emails stored at the provider to only the most recent. This lets me also use providers that offer small amounts of storage. My recent emails are available instantly through IMAP to the provider. Starting within last 24h and going back forever they're available at the archive webmail.
I can switch email providers at any time as fast as DNS records propagate (because I use @my.own.domains) and as fast as I can update the IMAP/SMTP credentials for my phone/desktop/mbsync.