top | item 17615376

Ask HN: Which self-hosted solutions are you using?

147 points| mohitmun | 7 years ago | reply

I came across Perkeep[1] project today. I know some other self-hosted solutions like Rocket chat[2](Slack alternative), Redmine[3](Project management) etc. Curious what other self-hosted are there and which one you are using?

[1]: https://github.com/perkeep/perkeep

[2]: https://github.com/RocketChat/Rocket.Chat

[3]: http://www.redmine.org/

96 comments

order
[+] amanzi|7 years ago|reply
I run a whole bunch of different servers and apps in Docker on an old laptop with an i7 processor and 16GB RAM.

One of my favourite self-hosted apps is WikiJs (https://wiki.js.org/). It takes a git repository of markdown files and turns it into an editable wiki and syncs back changes to the git repository.

I also use InfluxDB with Chronograf and Telegraf (https://www.influxdata.com) to collect and analyse logs. It's not quite as full featured as Elastic or Prometheus but is easy to use, rock-solid and nice to look at. Plus they sent me a free pair of socks (all the way to NZ) for filling in a survey! :-)

And to help manage all the Docker images I spin up and down, I use Portainer - https://portainer.io/

Forgot to add that just recently I've started to run Apache Guacamole to give me remote access to my local LAN while I'm not at home. This is so great - HTTPS access to RDP, VNC, and SSH sessions. https://guacamole.apache.org/

[+] sgt|7 years ago|reply
I also like the TICK stack and we recently chose this for production use over Elastic. Admittedly Elastic has more features and is possibly even more stable, but TICK inherently much more efficient (you can run it on a Raspberry Pi). InfluxDB also has some nice downsampling and retention policy features that allows it to run more efficiently in a constrained environment.
[+] coaxial|7 years ago|reply
How do you keep your docker images up to date? With virtual machines or even lxd containers, you can enable unattended upgrades but not with docker. There is a project (I forget the name) to destroy and rebuild containers with the newer image version, but it doesn't work with images that are built off of others using a Dockerfile.
[+] actionowl|7 years ago|reply
I setup Redmine, Gitolite, and Jenkins when I started working at a company a few years ago. They worked great and we had a couple of python scripts to make everything fit nicely together (git commit keywords to resolve issues, etc).

Then one day someone decided they needed "reports". We ditched our working system and paid a bunch of money for the Atlasssian suite. To this day I still miss our simple, functional, and free setup.

Bamboo was so bad that we eventually gave up on it and switched back to Jenkins. Seriously Bamboo is one of my most hated software products of all time.

We tolerate Confluence but the fact that the JIRA and Confluence have their own, annoying flavor of markdown, which is different from Bitbucket's flavor annoys me to no end.

Bitbucket (which was called something else before) does have a few nice features but nowadays there are options better than gitolite alone. JIRA has those pretty reports that someone wanted and that are never accurate.

yay.

[+] chrisseaton|7 years ago|reply
> We tolerate Confluence but the fact that the JIRA and Confluence have their own, annoying flavor of markdown, which is different from Bitbucket's flavor

How do they justify this? It trips me up every single working day of my life. The products look identical so all I see is a text box on a white site with blue accents and I inevitably start writing the wrong markdown.

[+] robbyt|7 years ago|reply
Atlassian software can be so disappointing. We are running Confluence on GKE, and it was such a chore to properly containerize it.

We also use RedMine (running on GKE) and that was a breeze to setup and deploy.

[+] messe|7 years ago|reply
I've been trying out fossil[1] for some small personal projects, it's a DVCS based on SQLite (from the same author, drh) and includes a wiki and issue tracking.

I think I might even be starting to prefer it to git/git(lab|hub).

[1]: https://www.fossil-scm.org/index.html/doc/trunk/www/index.wi...

[+] interfixus|7 years ago|reply
I have used Fossil for years for absolutely everything which needs - or might potentially one day benefit from having had - any kind of versioning. Clear, concise, lightweight, minimalist, utterly brilliant tool from tthe utterly brilliant D. Richard Hipp. To my ongoing astonishment, many accomplished people have never even heard of it.
[+] executesorder66|7 years ago|reply
How well does fossil work with binary files?
[+] dmytrish|7 years ago|reply
- Gitea for my git repositories (moved from gitweb);

- Syncthing + my own FileShelf[0] as a web interface, instead Dropbox;

- Miniflux, a web RSS reader;

- IPython notebooks;

- Customized Jekyll for my blog + comments powered by self-hosted Isso;

- postfix/dovecot + Roundcube for the web mail;

- ejabberd (mostly to have notifications from my VPS);

- goaccess for the web server statistics, portainer and a couple of FCGI scripts for monitoring and deployment;

I am still not satisfied with my setup completely and there are many other things I'd like to tinker with (e.g. DokuWiki, Grafana/Prometheus).

sandstorm.io looks very promising, but the last time I was put off by its desire to take over my VPS (maybe I will bite the bullet and get another dedicated VPS for it).

[0]: https://github.com/EarlGray/fileshelf

[+] slipwalker|7 years ago|reply
i'm curious, i assume you bought a SSL certificate for your postfix/dovecot setup, myself i'm using one from sslforfree, do you mind to tell where did you got yours ? Recommended ?
[+] zeta0134|7 years ago|reply
I've been using sandstorm.io at the recommendation of a friend, and I'm pretty impressed with it. It's kind of like containerised apps that you run like a server, and once it's set up it's super easy to manage. It's replaced Trello and Evernote for me, and had a bunch of useful trinkets out of the box.
[+] leonroy|7 years ago|reply
Running similar setups on my home lab and company lab:

* VMware VSphere/ESXi

* JIRA / Confluence (managing tickets and wiki)

* FreeNAS (server facing file server duties)

* Synology (user facing file serving duties)

* Zimbra (mail server)

* pfSense (gateway, dhcp, dns, vlans)

* SIPP (SIP endpoint testing)

* Elastix (Asterisk PBX/VoIP Server)

* Windows Server (DNS, DHCP, file serving)

* Openfire (XMPP/Jabber server)

* NAKIVO (VMware backup server)

* Zabbix (SNMP/IPMI/Server monitoring server - amazing product but a PITA to setup)

Thinking about trying Proxmox though once my VMware licenses come up for renewal.

As an aside the most trouble free, zero maintenance server in my home lab is the Windows Server. Updates itself without filling up /boot and killing itself (Ubuntu I’m looking at you...). It takes up hardly any resources on the Hypervisor and just runs and runs. Haven't had to login to it in years.

Really wish Microsoft brought that rock solid ethos to Windows 10. Their server products are absolutely incredible.

[+] executesorder66|7 years ago|reply
Do you use Zimbra at work? How is that compared to using Exchange for example?

Any drawbacks?

[+] superboum|7 years ago|reply
Personnaly, I have built a "self-hosted" stack around the following services:

* Seafile (file hosting/synchronization/sharing/history)

* SoGo (a webmail that work with existing IMAP and SMTP servers and exposes an Exchange API)

* Matrix / Riot (matrix is a chat server, Riot is the web client)

* Jenkins 2 (Continuous Integration / Continuous Deployment)

* FreshRSS (RSS aggregator)

Authentication is managed by a single LDAP service (openldap).

I also plan to test/deploy:

* Peertube (video hosting)

* Mastodon (micro-blogging)

My next goal would be to distribute this stack on more than one server, in order to improve availability.

[+] fotcorn|7 years ago|reply
Running on my NAS at home:

* GitLab (GitHub + CI/CD replacement)

* FreeNAS (Storage server)

* Nextcloud (Dropbox replacement)

* Syncthing (Dropbox replacement, Nextcloud did not work properly on my android phone)

* In progress: Kubernetes cluster (just for fun, RKE + rook.io)

* My own notes/wiki/task tracker I will release real soon now (TM)

Thinking about setting up Gitea + Drone.io, GitLab is just too heavyweight for just using it as git Hosting + CI/CD.

[+] h1d|7 years ago|reply
Looking forward for your "issue tracker". I've been looking around for a simple one "for the rest of us", but not much really exists. The close one I almost liked except the feature was too limited was Brimir. Was thinking might as well create one myself if I get the time.
[+] kungtotte|7 years ago|reply
What sort of hardware are you running? I'm looking to set something up myself, and I like the look of FreeNAS as it sounds like it fits my use case but the HW recommendations are a little out of my budget at the moment.
[+] rhizome31|7 years ago|reply
Out of curiosity, how was your experience with RKE? Is it as smooth as advertised?
[+] kop316|7 years ago|reply
Out of curiosity, what was not working with Nextcloud on your Android phone? Nextcloud on my phone runs extremely well.
[+] njsubedi|7 years ago|reply
You can try Gogs as a replacement of Gitlab for small/personal projects.
[+] lucideer|7 years ago|reply
I've tried perkeep out but couldn't really figure out its goal or purpose. It seems to be built on a lot of interesting theoretical ideas of generalised storage without an actual current application. In particular there's some talk on their homepage about software archeologists being able to reverse engineer the format easily in future, but that seems a little presumptuous if they don't find a proper use case between now and that future. Right now it just seems like a less convenient alternative to a filesystem.

I had a related thought recently when trying out the SecureScuttlebutt social network: ssb seems like a format that could fill the intended use case of Perkeep (throwing all your stuff in a database) with the added advantages of (a) having broader applications today, (b) having a wider range of mature db clients and (c) having a well-functioning existing hosted ecosystem for cross-device syncing.

This isn't ssb's intended use case and I haven't tried it yet but I intend to.

[+] StavrosK|7 years ago|reply
Yeah, I remember hearing about it (then called Camlistore) a decade or so ago, and I visited the home page and saw "if you're a developer, you can probably get some utility out of it". You'd think that, after ten years, they'd have made something that the average user can at least install.
[+] INTPenis|7 years ago|reply
At home;

Emby-server for my home media library.

APU OpenBSD router for my outer-most internet router at home.

Unbound LAN resolver with a number of upstream unbound instances at different VPS providers.

Libvirt hypervisor for personal projects.

Synology DS411slim NAS and one homemade with emby, I'm wanting to replace the homemade one with FreeNAS mini though because I'm not happy with the HW in it.

At work I've setup, or helped setup;

Owncloud for internal file sharing and to clients.

A couple of gitlab instances, one for internal dev stuff and one for a client.

A homemade password pusher.

In-house developed monitoring system.

Really this list could go on forever so I'm going to stop here. Having worked for 7 years at my current position with setting up various open source solutions.

[+] vageli|7 years ago|reply
What is a homemade password pusher? Is that a method to securely send a password to a colleague or something?
[+] cherrybush|7 years ago|reply
https://github.com/go-gitea/gitea self hosted git service. They provide a prebuild statically linked binary. We use it for some time now and it's just beautiful. In my opinion the nicest self hosted git to date. Also the development is very active and new functionality is added continuously.
[+] mstaoru|7 years ago|reply
I probably would happily use hosted solutions, but being in China, everything is either completely blocked, half-works, or way too slow. So we (have to) use Gogs[1] as own Github, Mattermost[2] as own Slack, and StandardNotes[3] as own Evernote (Evernote has China presence, but it's a slightly different product + privacy concerns). I'm also quite happy with Haraka[4] mail server for outbound emails as a self-hosted Mandrill / Mailgun alternative.

[1]: https://gogs.io/

[2]: https://www.mattermost.org/

[3]: https://docs.standardnotes.org/self-hosting.html

[4]: https://haraka.github.io/

[+] timlyo|7 years ago|reply
Syncthing instead of dropbox. Works great for synching music (and only music as I can just sync a single folder) and for replicating important files across multiple computers.

I've got it on a linode and across all my computers.

https://syncthing.net/

[+] JeanMarcS|7 years ago|reply
You know you can add several entries, and so several directories with syncthing, do you ?

Me, I’ve got one for all administrative stuff, one for my web WIP, one for my personal photos, etc...

And each doesn’t replicate on the same other servers, as you can choose by entry.

[+] philip1209|7 years ago|reply
I use Metabase for querying our SQL database. I love how easy it is to ask questions of our data. I use it a couple of times per day.

It's free, and by self-hosting it I can keep our firewall rules locked down on the DB.

[+] h1d|7 years ago|reply
* Mattermost - For chat system. It has proved to be quite stable for over a year and none of the people who used complained of bugs or annoyance. Recent version of mobile app seems to work just fine too. (They rewrote and separated it into a classic version.)

* Dokuwiki - Nothing new but it just works for my personal company memo. Its simplicity is good.

* monit - I love the easy to understand syntax of the config to monitor servers. Can also monitor the freshness of SSL certs when these days everyone uses Let's Encrypt and they expire pretty quickly. And bought m/monit a few times and I get to manage multiple servers' monit from its dashboard. I used to run Prometheus + Grafana for making pretty graphs of server activities but while the set up wasn't so hard, I felt the whole thing was a bit overkill for just monitoring server health and I'm happy with m/monit's simpler graphs. (Also does down sampling and purges old data.)

* InspIRCd - Not using anymore but had it for internal IRC chat before switching to Mattermost.

Tried BitWarden recently for password vault and it seems like a solid one but the clients are not as versatile as Enpass, so, still looking around.

[+] confounded|7 years ago|reply
Thank you for posting! Self-hosting is something I wish was discussed more frequently on HN.

I’m yet to depend on any of them, but projects I’ve been eying up are:

- Airsonic as a Spotify replacement (FOSS iOS clients)

- Kodi as a smart tv/box replacement (had this for a while, worked great!)

- NextCloud to host files (generally allergic to php, but too scared of iOS binaries from China to trust the superior SeaFile)

[+] coreymaass|7 years ago|reply
I'd never thought of WordPress plugins as self-hosted apps until I built my WordPress plugin, Kanban for WordPress [1]. It can be thought of as a self-hosted Trello. I've since seen a self-hosted Buffer, Pocket, Evernote, Delicious/Pinboard, all on WordPress.

[1] https://KanbanWP.com