dockerc - Alat untuk mengompilasi image Docker menjadi biner portabel mandiri
(github.com/NilsIrl)- Alat untuk mengompilasi image Docker menjadi biner mandiri yang dapat dijalankan dan portabel
- Memungkinkan penyediaan biner yang bisa dijalankan kepada pengguna tanpa perlu perintah seperti
docker run,pip install,npm i, dan sebagainya
Fitur
- Mengompilasi image Docker menjadi biner yang portabel.
- Container yang tidak memerlukan hak akses root.
- Dukungan MacOS dan Windows (menggunakan QEMU): direncanakan
- Mendukung x86_64 (dukungan arm64 direncanakan)
- Mendukung argumen
- Mendukung penetapan variabel lingkungan menggunakan
-e. - Mendukung penetapan volume menggunakan
-v.
Cara penggunaan
- Instal dockerc dari rilis terbaru.
- Buat biner output menggunakan image dari Docker Hub atau image dari penyimpanan daemon Docker lokal.
- Biner yang dihasilkan dapat dipanggil seperti biner biasa.
- Opsi
-edan-vdapat ditentukan dengan cara yang sama seperti saat menggunakandocker run. - Layanan jaringan yang berjalan di dalam container dapat diakses secara langsung, tanpa perlu menentukan
-p. - Skopeo digunakan untuk memuat image; untuk lokasi lain, lihat dokumentasinya.
Pendapat GN⁺
- dockerc adalah alat yang berpotensi sangat meningkatkan kegunaan Docker, karena memungkinkan pengguna menjalankan aplikasi tanpa proses instalasi yang rumit. Ini bisa sangat berguna terutama bagi pengguna nonteknis.
- Fitur mengompilasi image Docker menjadi biner menyederhanakan distribusi dan deployment, sehingga menghemat waktu dan meningkatkan efisiensi bagi developer maupun administrator sistem.
- Namun, agar teknologi ini diadopsi secara luas, persoalan terkait keamanan, performa, dan kompatibilitas perlu diselesaikan dengan memadai. Misalnya, perlu verifikasi apakah biner hasil kompilasi seaman image Docker aslinya, dan apakah dapat berjalan lancar di semua sistem.
- Proyek lain yang menyediakan fungsi serupa dengan Docker adalah Podman, yang menawarkan kemampuan menjalankan container tanpa hak akses root.
- Saat mengadopsi dockerc, perlu mempertimbangkan integrasinya dengan workflow Docker yang ada, cara pembaruan dan pengelolaan image, serta ukuran dan performa biner hasil kompilasi. Keuntungan utama dari teknologi ini adalah penyederhanaan distribusi dan kemudahan penggunaan, tetapi di sisi lain perlu mempertimbangkan dengan cermat overhead yang mungkin muncul dalam proses kompilasi serta potensi masalah kompatibilitas.
2 komentar
Oh, cukup menarik.
Komentar Hacker News
Ini benar-benar keren.
Dulu saya pernah menggunakan dan merekomendasikan nix-bundle¹ atau padanan resminya,
nix bundle².nix bundledapat membuat bukan hanya executable gemuk, tetapi juga image Docker, AppImages, dan beberapa format image/executable lainnya.Sangat menyenangkan kembali ke executable portabel dengan OS bawaan.
Pengguna sedang menunggu orang-orang mulai mengirim Dockerfile yang menghasilkan container Docker untuk menjalankan hal-hal seperti ini.
Ada semacam ironi kosmik besar di sini.
Ini kemajuan yang keren, Nils! Senang melihat perkembangan proyek ini sejak percakapan kita di AGI House.
Masih tetap membutuhkan hal yang berbeda untuk arsitektur yang berbeda.
Ide bagus! Ini sebenarnya bekerja bagaimana?
Keren karena memakai gambar rant.
Apa maksudnya ini? Apakah ini berarti pengguna bisa mendistribusikan executable Ruby portabel tanpa harus menginstal Ruby?