vps-powered-by-docker
Arch Linux setup script to obtain a full VPS with Automatic Reverse Proxy without pain
Stack
- IPv4/IPv6 support ( Dual Stack )
- Git
- Docker
- CenturyLinkLabs/watchtower as the Docker auto-update manager
- jwilder/nginx-proxy as Reverse Proxy
- alastaircoote/docker-letsencrypt-nginx-proxy-companion as automatic Let's Encrypt provisioner ( official companion docker for jwilder/nginx-proxy )
- apache-nginx-referral-spam-blacklist preloaded for every host
Modules
- Poste ( mail_server.sh )
- UI for Docker ( ui_for_docker.sh )
- Portainer ( portainer.sh )
- Rainloop ( rainloop.sh )
- Winds ( getstream_winds.sh )
- Lineage CI/CD + OTA ( lineage_cicd_ota.sh )
- DNS Server ( dns_server.sh )
- ownCloud ( owncloud.sh )
- Nextcloud ( nextcloud.sh )
- koel ( koel.sh )
- ampache ( ampache.sh )
- goaccess ( goaccess.sh )
- gogs ( gogs.sh )
- WebDAV ( webdav.sh )
Requirements
A clean Arch Linux install with SSH capability as root user ( or any user which has sudo powers ).
Installation
wget https://github.com/julianxhokaxhiu/vps-powered-by-docker/archive/master.zip
unzip master.zip && cd vps-powered-by-docker-master
find ./ -name "*.sh" -exec chmod +x {} \;
./install.sh
Module setup
Edit the configuration variables to fit your needs, inside every module, then
./modules/<module_name>.sh
# example ./modules/mail_server.sh
Performance monitoring
Take a look at your Docker status thanks to this awesome CLI tool called ctop.
Disclaimer
- The mapping of the domains to the Host IP is considered done already externally to this project ( through DNS Server or statically inside your
hosts
file )