Main‑main Bikin Home Lab: dari M910q ke Proxmox

 Jadi ceritanya begini. Setelah sekian lama ngoprek server kecil‑kecilan, akhirnya saya mutusin buat bikin home lab yang lebih proper. Pilihan jatuh ke Lenovo M910q, mini PC mungil tapi lumayan gahar. Di dalamnya ada prosesor i5 generasi ke‑7, RAM 32GB, dan SSD 1TB. Spek segini rasanya pas banget buat main‑main virtualisasi, bikin VM, atau sekadar coba layanan cloud pribadi.

Langkah pertama tentu nyiapin installer Proxmox VE 8. ISO saya unduh dari situs resminya, lalu bikin bootable USB pakai Rufus. Begitu USB colok ke M910q, masuk BIOS, atur boot order, dan langsung jalan proses instalasi. Wizard instalasi Proxmox itu simpel: pilih disk, bikin password root, set email admin, dan tentukan IP statis biar gampang diakses dari jaringan rumah. Setelah reboot, dashboard Proxmox bisa dibuka lewat browser dengan alamat https://IP-SERVER:8006. Rasanya kayak punya pusat kontrol sendiri.

Begitu masuk, hal pertama yang saya lakukan adalah update sistem, bikin storage pool, dan atur backup. Karena ini home lab, saya sengaja bikin beberapa VM: Debian untuk web server, Windows buat aplikasi tertentu, dan beberapa LXC container untuk Nextcloud, Grafana, serta MariaDB. Dengan RAM 32GB, semua itu masih bisa jalan bareng tanpa ngos‑ngosan. Kadang saya juga pasang Docker di salah satu VM buat coba stack modern seperti Portainer atau CasaOS.

Yang bikin seru, home lab ini bukan cuma soal teknis. Ada rasa puas tersendiri ketika lihat mini PC mungil di pojok meja bisa berubah jadi “server pribadi” yang bisa diakses dari mana saja. Proxmox VE 8 bikin semuanya lebih gampang, tinggal klik‑klik di web UI, bikin VM baru, atur resource, dan langsung jalan.

Singkatnya, dari satu M910q kecil, saya bisa belajar banyak hal: virtualisasi, manajemen container, sampai monitoring dengan Grafana. Home lab ini jadi playground pribadi, tempat eksperimen tanpa takut merusak sistem utama. Rasanya mirip kayak dulu pertama kali bikin blog di Blogger — sederhana, tapi membuka pintu ke dunia baru yang lebih luas.

(WINDOWS) Open Live Writer

Assalamualaikum.

Selamat pagi teman-teman. Pagi ini kita akan membahas sebuah aplikasi Open Source yang dibuat sebagai alternatif dari aplikasi buatan Microsoft yaitu Windows Live Writer yang tergabung dalam satu suite yaitu Windows Live Essential yang kalau tidak salah terakhir rilis di tahun 2012. Sebelum kita membahas lebih lanjut, mari kita berkenalan terlebih dahulu dengan Windows Live Writer.

Setelah berkenalan dengan WLW, barulah kita bahas aplikasi alternatif WLW yaitu Open Live Writer atau yang kita singkat dengan OLW. (biar mudah)

Open Live Writer (OLW) adalah aplikasi Open Source dari WLW yang memiliki fungsi yang sama dengan WLW. Berikut adalah penjelasan tentang OLW yang saya kutip dari website resminya :

“Open Live Writer seperti Word untuk blog Anda. Open Live Writer adalah editor blog yang tangguh dan ringan yang memungkinkan Anda membuat entri blog, menambahkan foto dan video lalu mempublikasikan ke situs web Anda. Anda juga bisa menulis posting blog secara offline dan kemudian mempublikasikan kembali Anda. Open Live Writer bekerja dengan banyak penyedia layanan blog populer seperti WordPress, Blogger, TypePad, Moveable Type, DasBlog dan banyak lagi.”
http://openlivewriter.org/

Selanjutnya mari kita lihat tampilan aplikasi OLW ini.

Tampilan Editor
image

Tampilan Preview
image

Tampilan Source
image

Seperti itulah tampilan dari aplikasi OLW ini, benar-benar memudahkan kita saat ini menuangkan ide ke dalam Blog kita walaupun dalam kondisi Offline. hahaha

Download : Open Live Writer

Demikian post kali ini, lebih dan kurang saya mohon maaf. Wassalamulaikum

 

- yodymada -
https://yodymada.blogspot.com/

Hitung Umur (DETAIL) dengan JDateChooser

Selamat malam, setelah sekian lama vakum, akhirnya bisa menulis postingan lagi. Postingan kali ini akan membahas tentang cara menghitung Umur secara detail. Maksudnya secara detail adalah akan ditampilkan umur kita dalam kurun watu tahun, bulan, dan hari. Sebelumnya saya sudah membuat postingan tentang ini disini. Namun dari komentar yang berdatangan dapat dilihat bahwa masih banyak teman-teman yang mengalami kesulitan dalam menjalankan potongan program yang ada di postingan tersebut. Untuk itu kali ini saya akan kembali membahas postingan tersebut secara lebih detail melalui postingan ini. Are you ready ?

Pertama-tama siapkan form yang akan digunakan, sebagai contoh bisa dilihat pada gambar berikut :
*saya anggap anda sudah bisa membuat form seperti ini (^_^)v

image

Kemudian kita klik 2x pada Jbutton HITUNG UMUR untuk meletakkan kode yang akan digunakan untuk melakukan proses perhitungan umur. Untuk kode nya adalah sebagai berikut :

ArrayList<String> nama_hari = new ArrayList<>();
nama_hari.add("Minggu");
nama_hari.add("Senin");
nama_hari.add("Selasa");
nama_hari.add("Rabu");
nama_hari.add("Kamis");
nama_hari.add("Jumat");
nama_hari.add("Sabtu");

Date lahir = jDateChooser1.getDate();
LocalDate today = LocalDate.now();
LocalDate birthday = lahir.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();

Period p = Period.between(birthday, today);
long p2 = ChronoUnit.DAYS.between(birthday, today);

lb_output.setText("<html>Anda lahir pada hari <b>"+nama_hari.get(lahir.getDay())+"</b> dan umur anda adalah"
+ "<br>" + p.getYears() + " tahun " + p.getMonths() + " bulan " + p.getDays() + " hari<br>"
+ "<br>Selamat, anda telah menjalani hidup selama <b>"+p2+"</b> hari.. (^_^)v");

Nah setelah mengetik kode diatas, silahkan run program, sehingga hasilnya akan ditampilkan sebagai berikut (saya menggunakan Look And Feel Jtatto dan tanggal lahir yang saya gunakan milik pak Presiden Obama dan dijalankan pada tanggal 24 Februari 2015)  :

image

Sekian postingan ini, selamat mencoba. Untuk keluhan, saran dan pertanyaan silahkan corat-coret di papan komentar dibawah. (^_^)v

Mengubah Format Tanggal Pada JTable

Assalamualaikum dan selamat malam. Kembali pada postingan blog, kali ini kita masih membahas tentang Tanggal. Kasus yang akan kita pecahkan kali ini adalah bagaimana cara mengubah format tanggal yang ditampilkan oleh JTable. Biasanya format tanggal yang ditampilkan pada JTable adalah :

( yyyy-MM-dd) dengan contoh (2014-06-14)

Nah, mungkin akan susah membaca format tanggal tersebut karena belum tentu semua pengguna tahu cara membedakan antara Tanggal dan Bulan. Untuk mengatasinya, kita harus mengubah format tanggal tersebut menjadi :

(d MMMMMMMMM yyyy) dengan contoh (14 Juni 2014)

*Note : Format tanggal yang digunakan pada database harus DATE bukan DATETIME.

Baiklah langsung kita mulai cara pembuatannya. Seperti biasa, saya akan menampilkan hasilnya di awal postingan dengan harapan teman-teman akan melanjutkan membaca postingan ini jika preview yang ditampilkan sesuai dengan yang teman-teman butuhkan.

image

Pertama-tama rancanglah form yang akan digunakan. Untuk contoh teman-teman bisa melihat rancangan form saya berikut ini :
*Note : kita hanya membahas bagian Java, tidak membahas Database

image

Setelah merancang form, buatlah metode untuk menampilkan isi database ke JTable. Metode penampilan data dapat dilihat pada postingan ini akan tetapi dengan melakukan sedikit penambahan kode pada bagian initColumn dan refreshTable-nya.

Modifikasi yang dilakukan adalah

  1. Menambahkan satu kolom baru (metode InitColumn) : model.addColumn("Format Huruf");
  2. Menambahkan pemanggilan data (metode refreshTable) :  setCustomFormat(rs.getString(3))

Setelah selesai penulisan metode untuk menampilkan data pada JTable, maka proses terakhir tinggal menjalankan program ini dengan cara di-RUN sehingga menampilkan hasil yang sama seperti Preview diatas.

Eiiits, jangan lupa menambahkan metode setCustomFormat(String data) untuk melakukan konversi tanggal dari format awal yaitu angka menjadi format huruf. Koding metode ini adalah :

public String setCustomFormat(String tgl){
  Date tanggal = null;
  try {
    tanggal = new SimpleDateFormat("yyyy-MM-dd").parse(tgl);
  } catch (ParseException ex) {
    System.out.println(ex.getMessage);
  }
  SimpleDateFormat frmt1 = new SimpleDateFormat("d MMMMMMMMM yyyy");
  String dateString = frmt1.format(tanggal);
  return dateString;
}

Nah, semua langkah selesai, hasilnya seperti berikut :

image

Selamat Mencoba \(^_^)9

Membuat JFrame Tidak Bisa Dipindahkan

Assalamualaikum dan selamat siang. Kali ini kita kembali membahas Java Swing dengan GUI-nya. Kasus yang akan kita pecahkan kali ini adalah bagaimana membuat JFrame tidak bisa dipindahkan. Jadi saat JFrame tersebut di-load, maka disitulah dia selamanya (*lebay). Hasil yang akan dapatkan mungkin seperti ini :

image

Sebelumnya saya kasih tahu dulu darimana datangnya materi ini. Hai ini dimulai ketika saya membuka halaman Blogger saya dan menemukan ada komentar baru yang bertanya sebagai berikut:

image

Inti dari permasalahan ini adalah menghilangkan TitleBar dikarenakan TitleBar inilah yang memberikan fungsi untuk menggeser aplikasi di layar atau istilah bahasa daerahnya “Drag”. Nah, untuk menghilangkan TitleBar tidaklah sulit, mungkin cukup beberapa baris koding saja. Pertama rancanglah desain programnya terlebih dahulu. Berikut adalah contoh rancangan yang saya buat :

image

Mengapa saya pasang JPanel dibagian atasnya ? ini dilakukan untuk menggantikan TitleBar yang akan kita hilangkan. Jadi program tetap bisa di Exit dan Minimize. Oke selanjutnya pasang event pada JBbutton Minimize dan Exit dengan koding berikut :

  • Jbutton Exit
    ==>
    System.exit(0);
  • JButton Minimize
    ==>
    this.setState(JFrame.ICONIFIED);

Lalu, ketik koding berikut di bagian konstruktor sebelum metode initComponent buatan Netbeans :

this.setUndecorated(true);
Color color = UIManager.getColor("activeCaptionBorder");
this.getRootPane().setBorder(BorderFactory.createLineBorder(color, 4));
initComponents(); // sudah dibuat oleh Netbeans
setLocationRelativeTo(null);

Sehingga tertulis seperti berikut :

image

Dan program selesai. Silahkan di-RUN dan dapatkan hasil seperti berikut :

image

Selamat mencoba \(^_^)9

Memindahkan Tanggal Dari JTable Ke JDateChooser

Assalamualaikum dan selamat malam. Kali ini kita kembali akan membahas koding Java. Kasus yang akan kita bahas kali ini adalah bagaimana cara memindahkan data Tanggal dari JTable ke JDateChooser. Hal ini menjadi penting jika kita perlu melakukan perubahan data Tanggal dari tabel. Untuk hasilnya, dapat dilihat pada gambar berikut:

image

Mungkin itu terlihat seperti Preview biasa, tapi percayalah itu Benar. Hehehe

Untuk memecahkan kasus yang akan kita bahas, alangkah baiknya teman-teman merancang dulu  form yang akan digunakan. Untuk contoh, teman-teman bisa melihat Preview diatas. Setelah itu, teman-teman harus membuat event pada saat Tabel di klik dengan cara:

JTable – Klik Kanan – Event – Mouse – MousePressed

Lalu teman-teman ketik koding berikut :

if(evt.getClickCount()==1){
            jDateChooser1.setDate(getTanggalFromTable(jTable1, 2));
        }

Pasti error kan ?? Ya iya lah, kan metode getTanggalFromTable-nya belum dibuat. Hahaha
Jadi langkah selanjutnya, mari kita buat metodenya. Ketik koding berikut:

public static Date getTanggalFromTable(JTable table, int kolom){
        JTable tabel = table;
        String str_tgl = String.valueOf(tabel.getValueAt(tabel.getSelectedRow(), kolom));
        Date tanggal = null;
        try {
            tanggal = new SimpleDateFormat("yyyy-MM-dd").parse(str_tgl);
        } catch (ParseException ex) {
            Logger.getLogger(TableDate.class.getName()).log(Level.SEVERE, null, ex);
        }
        return tanggal;
    }

Nah, tinggal di-Run dan hasilnya akan sama seperti Preview diatas.

image

Selamat Mencoba   \(^_^)9

Menghitung Umur Dari JDateChooser

Selamat (tengah) malam. Kembali bikin postingan tentang Java karena sedang hot-hot nya di kampus. Postingan kali ini akan membahas bagaimana cara menghitung umur menggunakan Java tepatnya dari data yang dimasukkan dengan JDateChooser. Untuk pengantar, seperti inilah contohnya :

HitungUmurSorry Koding Hidden (^_^)v

Masih bingung karena koding-nya di-hidden ? Sabar… Inilah koding-nya :
*Posisi Koding di JButton yah :D

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        
    Date lahir = jDateChooser1.getDate();
    Date kini = new Date();
    int umur = kini.getYear()-lahir.getYear();
    tx_tahun.setText(String.valueOf(umur));
}

Inilah output koding tanpa hidden :

HitungUmurNoHidden

Semangat mencoba…!!! (^_^)9
Jangan lupa
diisi kolom komentarnya (^_^)v