README.md 3.69 KB
Newer Older
1 2
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/1894/badge)](https://bestpractices.coreinfrastructure.org/projects/1894)

Nick Busey's avatar
Nick Busey committed
3
# HomelabOS
Nick Busey's avatar
Nick Busey committed
4

5 6
Your very own offline-first open-source data-center!

Nick Busey's avatar
Nick Busey committed
7 8
## [Documentation](https://nickbusey.gitlab.io/HomelabOS/)

9
## Summary
Nick Busey's avatar
Nick Busey committed
10

11
A set of Ansible scripts to configure a Docker based Homelab server with all sorts of goodies. Following the unix philosophy we gather together many specific tools to build the exact end result desired.
Nick Busey's avatar
Nick Busey committed
12 13 14

## Goals

15 16 17 18 19
To make it easy for anyone to own all their data in an easy and secure way, without the need of cloud providers.

## Features

* One command depyloment
20 21
* Automated Backups
* Easy Restore
22

Nick Busey's avatar
Nick Busey committed
23
### [Planned Features] (https://gitlab.com/NickBusey/HomelabOS/issues?label_name%5B%5D=enhancement)
Nick Busey's avatar
Nick Busey committed
24

Nick Busey's avatar
Nick Busey committed
25 26 27 28
## Demo

![demo.gif](demo.gif)

Nick Busey's avatar
Nick Busey committed
29 30 31 32
### Local Demo

If you have the latest version of Vagrant and Virtual Box setup you can demo things locally by running `make develop`. This will spin up a temporary developer copy on your local computer without needing an actual server to point things at. Note no data will actually be saved from inside the VM, so this is for testing only.

33 34
## Included Software

35
* [Convos](https://convos.by/) - Always-on IRC client (IRC bouncer)
36
* [Dashboard](https://github.com/causefx/Organizr) - Access all your HomelabOS services in one easy place.
Nick Busey's avatar
Nick Busey committed
37
* [Darksky](http://darksky.net/) - Local weather reported via [darksky-influxdb](https://github.com/ErwinSteffens/darksky-influxdb)
Nick Busey's avatar
Nick Busey committed
38 39
* [Dasher](https://github.com/maddox/dasher) - Amazon Dash button support
* [Documentation](https://nickbusey.gitlab.io/HomelabOS/) - Offline, searchable documentation via [MkDocs](https://www.mkdocs.org/)
Nick Busey's avatar
Nick Busey committed
40
* [Emby](https://emby.media/) - Media player
41
* [Firefly III](https://firefly-iii.org/) - Money management budgeting app
Nick Busey's avatar
Nick Busey committed
42 43
* [Gitea](https://gitea.io/en-US/) - Git hosting
* [Grafana](https://grafana.com/) - Pretty graphs
Carlos Marques's avatar
Carlos Marques committed
44
* [Home Assistant](https://www.home-assistant.io/) - Home Automation
Nick Busey's avatar
Nick Busey committed
45
* [InfluxDB](https://www.influxdata.com/time-series-platform/influxdb/) - Time series data storage
46 47 48
* [NextCloud](https://nextcloud.com/) - Private Cloud Storage, Calendar, Contacts, etc.
* [Paperless](https://github.com/danielquinn/paperless) - Document management
* [Portainer](https://www.portainer.io/) - Easy Docker management
49
* [Sonerezh](https://www.sonerezh.bzh/) - Music streaming and library management
Nick Busey's avatar
Nick Busey committed
50
* [Telegraf](https://www.influxdata.com/time-series-platform/telegraf/) - Server statistics reporting
51
* [Terminal](georgeyord/butterfly-web-terminal) - Web based terminal access
52
* [Transmission](https://transmissionbt.com/) - BitTorrent client
53 54

### Coming Soon
Nick Busey's avatar
Nick Busey committed
55

56
* BitWarden - Password manager
57
* BulletNotes - Note taking knowledgebase with kanban and calendar functionality.
58 59 60 61 62
* Chronograf
* Couchpotato
* FreshRSS
* Jackett
* NZBGet
63
* OwnTracksRecorder - https://github.com/owntracks/recorder
64 65 66 67
* [Pi-hole](https://pi-hole.net/) - Ad blocking
* Sonarr
* SynchThing
* urBackup
68 69 70 71 72 73 74 75 76 77

## Requirements

A server running Ubuntu 18.04 accessible via ssh with a user that has sudo.

A domain configured with a `A` type DNS record of `*.yourdomain.com` pointed at your server's IP address.

Ports 80 and 443 punched through any firewalls and port forwarded at your server in question.

Ansible version 2.5+ installed on your computer (not the server).
78

Nick Busey's avatar
Nick Busey committed
79
## [Installation](https://nickbusey.gitlab.io/HomelabOS/setup/installation/)
80 81 82 83

## Contributing

Please do!
84

Nick Busey's avatar
Nick Busey committed
85 86 87 88
### Developing Locally

Run `make develop` to spin up a local instance inside a Vagrant machine.

89
### Working locally on the documentation
90

91
Follow the [MkDocs Material Theme setup directions](https://squidfunk.github.io/mkdocs-material/getting-started/).
92

93 94
Then run `mkdocs serve`.

Nick Busey's avatar
Nick Busey committed
95
To build changes to the docs run `make build`.