This is some kind of a fork for the WireHole docker-compose project without Unbound (I could not get this working for me). Combining WireGuard Easy, Pi-Hole, Nextcloud, and MariaDB in one docker compose so you can have your own private cloud storage accessible through a self-hosted VPN.
To get started, clone this repo and docker compose up
.
git clone https://github.com/Kylamber/Wireholecloud.git
cd Wireholecloud
Edit the docker-compose.yml
file and search for "Change This" comments, they are important to change! After changing them, you just need to compose it.
docker compose up
Another way to start is just to download docker-compose.yml
, put it into a folder, modify it, and docker compose up
it.
The IP addresses and ports mentioned here are the defaults inside docker-compose.yml
Connect to wg-easy using localhost:51821
or 10.2.0.3:51281
and login using the specified password in docker-compose.yml
. Add clients as you wish and connect them with your devices. The devices that have access to this VPN can access the other services in the same docker network.
Connect to NextCloud using localhost:8080
or 10.2.0.4:8080
. To set it up the first time, you can fill in the admin user and password. For the database, select MySQL/MariaDB and input the database user, password, and name according to docker-compose.yml
. For the database host, put in localhost:3306
and if that doesn't work try putting in 10.2.0.5:3306
.
Connect to Pi-Hole's admin site using localhost:5353/admin
or 10.2.0.100:5353/admin
.
If you only want to use the WireGuard Easy and Pi-Hole containers, feel free to delete the mariadb and nextcloud container from docker-compose.yml
.
I do believe that this can't be used in an armv7 devices such as a Raspberry Pi since the mariadb container doesn't support it.