Pendahuluan
Pernah kepikiran untuk punya cloud storage sendiri seperti Google Drive, atau repository Git pribadi seperti GitHub, bahkan mengelola smart home dengan server lokal?
Semua itu bisa dilakukan dengan konsep self-hosting.
Self-hosting berarti menjalankan aplikasi di server milik kita sendiri, bukan bergantung pada layanan pihak ketiga.
Keuntungannya antara lain:
Kontrol penuh atas data pribadi.
Hemat biaya (tidak perlu langganan bulanan).
Bisa dikustomisasi sesuai kebutuhan.
Di artikel ini, kita akan belajar cara men-deploy aplikasi populer di server lokal:
Nextcloud → Alternatif Google Drive.
Gitea → Alternatif GitHub.
Home Assistant → Smart Home Hub.
Syarat:
Server lokal sudah online via VPS + WireGuard (tutorial sebelumnya).
Domain/subdomain (opsional tapi direkomendasikan).
Docker & Docker Compose sudah terinstall.
1. Persiapan Lingkungan Server
Update sistem dan install Docker + Docker Compose:
sudo apt update && sudo apt upgrade -y sudo apt install docker.io docker-compose -y sudo systemctl enable docker
Cek apakah Docker sudah jalan:
docker --version docker-compose --version
2. Deploy Nextcloud (Alternatif Google Drive)
Buat file docker-compose.yml:
version: '3' services: db: image: mariadb restart: always environment: MYSQL_ROOT_PASSWORD: rootpass MYSQL_DATABASE: nextcloud MYSQL_USER: ncuser MYSQL_PASSWORD: ncpass volumes: - db:/var/lib/mysql app: image: nextcloud restart: always ports: - 8080:80 volumes: - nextcloud:/var/www/html depends_on: - db volumes: db: nextcloud:
Jalankan:
docker-compose up -d
Akses via http://IP-SERVER:8080.
3. Deploy Gitea (Alternatif GitHub)
Buat file docker-compose.yml:
version: '3' services: gitea: image: gitea/gitea:latest restart: always ports: - "3000:3000" - "222:22" volumes: - ./gitea:/data
Jalankan:
docker-compose up -d
Akses via http://IP-SERVER:3000.
4. Deploy Home Assistant (Smart Home Hub)
Buat file docker-compose.yml:
version: '3' services: homeassistant: container_name: homeassistant image: ghcr.io/home-assistant/home-assistant:stable volumes: - ./config:/config network_mode: host restart: unless-stopped
Jalankan:
docker-compose up -d
Akses via http://IP-SERVER:8123.
5. Menghubungkan ke Domain + SSL
Supaya lebih profesional, hubungkan aplikasi dengan domain.
Contoh:
cloud.domain.com → Nextcloud
git.domain.com → Gitea
home.domain.com → Home Assistant
Gunakan VPS sebagai reverse proxy (dengan Nginx/Traefik) lalu tambahkan SSL gratis menggunakan Let’s Encrypt.
(Sudah dibahas di artikel sebelumnya tentang domain + SSL).
6. Tips Keamanan
Jangan expose port langsung ke internet → selalu lewat VPS proxy.
Gunakan firewall (UFW/iptables).
Update rutin Docker image:
docker-compose pull && docker-compose up -d
Tambah autentikasi ekstra (misalnya Authelia/Keycloak).
Penutup
Dengan langkah-langkah ini, kamu bisa menjalankan aplikasi populer langsung di server lokal:
Nextcloud → cloud storage pribadi.
Gitea → Git hosting sendiri.
Home Assistant → smart home hub.
Semua bisa online dengan domain & SSL, tapi tetap aman karena data tersimpan di server milikmu. 🚀
Selamat mencoba, dan selamat datang di dunia self-hosting!





