Siap Guru Duan 👍
Kita pasang Nextcloud dengan prinsip yang sama seperti Immich: aman, terpisah, tidak mengganggu Moodle & WordPress, dan data besar di /dev/sdb.
Saya buat langkah rapi & bertahap. Fokus dulu install lokal sampai bisa dibuka, belum Cloudflared dulu.
🟦 RENCANA NEXTCLOUD (AMAN & TERPISAH)
Arsitektur
Docker sendiri (tidak campur Immich)
Port lokal:
8081Data user:
/srv/nextcloud/data→ /dev/sdbDatabase: MariaDB khusus Nextcloud (container) → /dev/sda
Tidak sentuh:
Nginx host
MariaDB Moodle
WordPress
🔹 LANGKAH 1 — Siapkan Folder Nextcloud
sudo mkdir -p /opt/docker/nextcloud
sudo mkdir -p /srv/nextcloud/data
sudo chown -R 1000:1000 /srv/nextcloud
Cek:
df -h /srv/nextcloud
Harus terlihat /dev/sdb1.
🔹 LANGKAH 2 — Buat .env Nextcloud
cd /opt/docker/nextcloud
nano .env
Isi (boleh copy):
# ===== Nextcloud =====
NEXTCLOUD_ADMIN_USER=admin
NEXTCLOUD_ADMIN_PASSWORD=adminpasswordku
NEXTCLOUD_TRUSTED_DOMAINS=cloud.sman2kandangan.sch.id localhost
# ===== Database =====
MYSQL_DATABASE=nextcloud
MYSQL_USER=nextcloud
MYSQL_PASSWORD=nextcloudpass
MYSQL_ROOT_PASSWORD=rootpass
# ===== PHP / Upload =====
PHP_UPLOAD_LIMIT=10G
📌 Password bebas, tapi ingat/simpan.
🔹 LANGKAH 3 — Buat docker-compose.yml
nano docker-compose.yml
Isi versi stabil & ringan:
services:
nextcloud:
image: nextcloud:28
container_name: nextcloud_app
restart: unless-stopped
ports:
- "8081:80"
environment:
MYSQL_HOST: db
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
NEXTCLOUD_ADMIN_USER: ${NEXTCLOUD_ADMIN_USER}
NEXTCLOUD_ADMIN_PASSWORD: ${NEXTCLOUD_ADMIN_PASSWORD}
NEXTCLOUD_TRUSTED_DOMAINS: ${NEXTCLOUD_TRUSTED_DOMAINS}
PHP_UPLOAD_LIMIT: ${PHP_UPLOAD_LIMIT}
volumes:
- /srv/nextcloud/data:/var/www/html/data
- /opt/docker/nextcloud/html:/var/www/html
depends_on:
- db
db:
image: mariadb:10.11
container_name: nextcloud_db
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
volumes:
- /opt/docker/nextcloud/db:/var/lib/mysql
📌 MariaDB ini KHUSUS Nextcloud, tidak ada hubungannya dengan moodle-db.
🔹 LANGKAH 4 — Jalankan Nextcloud
docker compose up -d
Tunggu ±1 menit.
🔹 LANGKAH 5 — Cek Status
docker ps
Target:
nextcloud_app Up
nextcloud_db Up
🔹 LANGKAH 6 — Tes Lokal
Buka di browser (server/LAN):
http://IP-server:8081
Atau dari server:
curl http://localhost:8081
🎯 Target:
Muncul halaman Nextcloud
Login pakai admin yang dibuat
🔐 JAMINAN KEAMANAN
✔ Moodle AMAN
✔ WordPress AMAN
✔ MariaDB Moodle TIDAK disentuh
✔ Data Nextcloud masuk /dev/sdb
✔ Nextcloud & Immich tidak saling ganggu
⏭️ LANGKAH SELANJUTNYA
Setelah Nextcloud bisa dibuka lokal, kita lanjut:
LANGKAH 7 — Integrasi Cloudflared
cloud.sman2kandangan.sch.id→http://localhost:8081Tanpa buka port
Tanpa ubah Nginx
Balas salah satu:
“nextcloud lokal sudah muncul”
atau kirim
docker pskalau mau saya cek
Kita lanjutkan sampai cloud sekolah siap dipakai ☁️💪
0 comments:
Post a Comment