Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions docs/community-installation-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -294,6 +294,40 @@ And the whole application can be now started:

Keep in mind that generated units cannot be enabled using `systemctl --user enable`. The Invidious containers will be started automatically.

## Proxmox VMs and LXCs

Guide contributor(s): [@SimplyProgrammer](https://github.com/SimplyProgrammer)

This method provides a simple and straightforward guide with scripts to setup Invidious inside a Proxmox Linux VM or LXC container.
It utilizes podman to create Invidious containers, Caddy 2 for self-signed https reverse proxy and Linux service for automatic startup.

### Prerequirements
Debian 12+ VM or an unprivileged Debian 12+ LXC container with:
* Name "invidious" (or something similar)
* 4GB+ of RAM
* 2+ x86_64 cores, 4 is ideal (ARM is also possible but `compose.yml` has to be modified accordingly).
* 20+GB of storage
* Static IP or static DHCP lease on your router.

### Networking
Further, you will need a DNS domain, paid or local one to point to this IP of your LXC/VM with Invidious.
It would be great if your router would allow/do this by default, and automatically assign something like `invidious.lan` or even better, `invidious.home.arpa` to your LXC/VM. For example, [OpenWrt](https://forum.openwrt.org/t/use-home-arpa-as-default-tld-for-local-network/165056/11) does this by default. For other routers, extra config might be needed.
If you have your own domain, reversed-proxy etc., setup might differ for you...

### Installation
Run this script (with sudo privileges or as root):
```
mkdir -p ~/invidious-podman && cd "$_" && git clone "https://github.com/SimplyProgrammer/Invidious-podman-LXC-VM.git" . && chmod 755 setup-invidious.sh && ./setup-invidious.sh
```
When it asks for the Invidious git repo, for 90% of you just press enter (unless you have your own forked one).

The most important part, when it asks for the DNS domain, specify aforementioned `invidious.lan`, `invidious.home.arpa` or whatever you have. But make sure the domain is reachable and working in advance (`nslookup` etc.).

If everything was done properly, now you should have a working LXC/VM with Invidious service and should be able to open it at `https://<your-invidious-domain>/`.\
It should automatically start with your VM/LXC, no extra work needed.

More info and the whole solution is available for review at https://github.com/SimplyProgrammer/Invidious-podman-LXC-VM.

## MacOS

Looking for contributors to this operating system. Please submit a new doc for MacOS at https://github.com/iv-org/documentation/blob/master/docs/community-installation-guide.md
Expand Down