Docker image & stack untuk memudahkan membuat website OpenSID di dalam Docker Container.
Saat ini masih dalam beta testing, tidak di peruntukkan digunakan di production server
Sistem Informasi Desa (SID) yang sengaja dibuat terbuka agar dapat dikembangkan secara bersama-sama oleh komunitas peduli SID. Selengkapnya di: OpenSID/OpenSID
Selengkapnya di: docker.com
- Base OS dengan Alpine Linux 3.8 lebih ringan dan cepat
- Terinstall PHP 5.6 support MySQL 5.x dan Redis Server
- Sudah termasuk PHP & Nginx dengan MySQL di container terpisah
- Nginx cache via fastcgi dan opCache otomatis aktif
- Build dan download otomatis versi terbaru OpenSID
- Environment variable untuk parameter install dan config OpenSID
- SSH login ke container dengan Public Key atau password
- Custom OpenSID admin username dan password
- Supervisor untuk managemen proses
curl -LO https://raw.githubusercontent.com/idjavahost/docker-opensid/master/docker-compose.yml
docker-compose up
Untuk mencobanya langsung, bisa clone repository ini lalu build sendiri image nya di local anda. Atau dengan menggunakan docker-compose.yml
yang telah di sediakan disini. Dengan cara sebagai berikut:
- Buat satu direktori di server docker host anda, misal
/root/opensid
- Unduh file
docker-compose.yml
dan masukkan ke direktori tadi - Sesuaikan environment yang ada di
services > opensid > environment
- Lalu jalankan perintah
docker-compose up
di dalam direktori
Catatan: Environment dengan nilai default kosong (-) adalah wajib didefinisikan pada container.
Nama | Default | Kategori | Fungsi |
---|---|---|---|
OPENSID_VERSION |
latest |
System | Digunakan untuk referensi versi OpenSID yang ingin digunakan. Gunakan latest untuk mengunduh versi paling terbaru OpenSID yang ada di github. |
USERNAME |
desa |
System | Digunakan untuk membuat user linux yang digunakan juga pada saat login SSH, user permission PHP & Nginx dan permission seluruh isi direktori OpenSID |
USERGROUP |
desa |
System | Group pada linux group yang sama fungsinya dengan USERNAME |
HOME |
/var/www |
System | Direktori home untuk USERNAME dan USERGROUP dan untuk base folder website OpenSID |
TZ |
Asia/Jakarta |
System | Waktu zona yang ingin digunakan di PHP dan linux system |
REAL_IP_FROM |
172.17.0.0/16 |
System | Nginx set_real_ip_from jika anda menggunakan container ini untuk publik dan berada di dalam reverse proxy |
DOCKERIZE_VERSION |
v0.6.1 |
System | Utilitas yang berguna untuk container, seperti php.ini dan nginx.conf template. Selengkapya |
SERVER_NAME |
- | System | Nama server atau domain yang ingin digunakan untuk website OpenSID. Harus FQDN. |
SSH_PORT |
2345 |
SSH | Port yang digunakan untuk masuk ke server melalui SSH |
SSH_PUBLIC_KEY |
- | SSH | Tingkatkan keamanan SSH server dengan menggunakan Public Key, jika ini di isi akan menonaktifkan SSH password |
SSH_PASSWORD |
- | SSH | Alternatif, jika SSH_PUBLIC_KEY kosong, maka login SSH akan menggunakan password yang di definisikan disini |
PHP_MEMORY_LIMIT |
128M |
PHP | php.ini variable yang digunakan untuk set maksimum memori yang bisa digunakan oleh PHP |
PHP_UPLOAD_MAX_SIZE |
50M |
PHP | php.ini variable untuk membatasi ukuran file setiap kali upload ke server |
PHP_SESSION_SAVE_HANDLER |
files |
PHP | Jika anda ingin menggunakan Redis server untuk menyimpan sesi PHP bisa dengan mengisi redis disini |
PHP_SESSION_SAVE_PATH |
/var/lib/php/sessions |
PHP | Jika menggunakan Redis, bisa di isi seperti: tcp://127.0.0.1:6379 |
OPCACHE_ENABLE |
1 |
PHP | Aktifkan opcache PHP cache engine atau nonaktifkan dengan mengisi 0 |
OPCACHE_ENABLE_CLI |
1 |
PHP | Aktifkan opcache PHP cache engine pada command line php atau nonaktifkan dengan mengisi 0 |
OPCACHE_MEMORY |
128 |
PHP | Maksimum memori yang bisa digunakan untuk cache code PHP |
DATABASE_HOSTNAME |
localhost |
OpenSID | Nama MySQL server yang akan digunakan untuk OpenSID |
DATABASE_NAME |
opensid |
OpenSID | Nama database yang akan digunakan untuk website OpenSID |
DATABASE_USERNAME |
root |
OpenSID | Nama MySQL user yang akan digunakan untuk terhubung dengan database di DATABASE_NAME |
DATABASE_PASSWORD |
- | OpenSID | Password untuk user DATABASE_USERNAME untuk terhubung dengan MySQL server |
ADMIN_USERNAME |
- | OpenSID | User login admin OpenSID, jika tidak didefinisikan, akan menggunakan default user OpenSID admin |
ADMIN_PASSWORD |
- | OpenSID | Password untuk admin user ADMIN_USERNAME jika kosong akan menggunakan default OpenSID admin password |
- Membuat automation script untuk cleanup log
- Membuat automation script untuk auto update dari github, tanpa menggunakan git
- Mengaktifkan OpenSID Cron
- Managemen file website
Laporkan segala jenis error atau bug yang anda temukan di Issue Tracker GitHub. Push dan buat merge request jika anda mempunya update terbaru yang ingin disatukan dengan repository ini, siapa saja bebas untuk memasukkan update ke dalam image docker ini.
MIT
Diracik oleh fauzie dengan fasilitas dari Java Digital Nusantara
Dipersembahkan hanya untuk komunitas OpenSID