#! क्या है?
#! (जिसे shebang कहा जाता है) Unix में मुख्य रूप से Python या Bash जैसी scripting languages के लिए इस्तेमाल होने वाली एक परंपरा है
- इसका उपयोग cross-platform और कई Linux distributions में application deploy करने के तरीके को एक single file में package करने के उदाहरण के रूप में किया गया है
- उदाहरण Dockerfile में backend, database, और UI सहित पूरा stack server एक single file में बनाया गया है
- यह Cosmopolitan Libc जैसा है, लेकिन application packaging के लिए है
इसका उपयोग क्यों करें?
क्या यह सुरक्षित है?
क्या इसका उपयोग करना चाहिए?
- अगर आप चाहें तो कर सकते हैं।
क्या performance अच्छी है?
क्या इसका maintenance संभव है?
क्या यह काम करता है?
इसे कैसे चलाएँ?
- इसे निम्न command से चला सकते हैं:
chmod +x ./Dockerfile ./Dockerfile
- उसके बाद http://127.0.0.1:8080 पते पर जाएँ।
GN⁺ की राय
- यह लेख
#! (shebang) का उपयोग करके एक single Dockerfile में पूरे stack server को package करने का एक अनोखा तरीका पेश करता है।
- यह तकनीकी जिज्ञासा जगाता है और पारंपरिक application deployment तरीकों के लिए एक नया दृष्टिकोण प्रस्तुत करता है।
- maintenance और stability के लिहाज़ से यह तरीका अनुशंसित नहीं है, लेकिन experimental और innovative projects में रुचि रखने वाले developers के लिए यह एक दिलचस्प विकल्प हो सकता है।
7 टिप्पणियां
<<EOFजैसे heredoc का इस्तेमाल करने के लिए Dockerfile के सबसे ऊपर# syntax = docker/dockerfile:1.4.0होना ज़रूरी है। हैरानी की बात है किsyntaxभी docker registry से ही लाया जाता है।वाह... इस साल का सबसे बड़ा मानसिक झटका है ये lol
दिलचस्प तरीका है।
हाहा.. सच में काफ़ी नया-सा आइडिया है
वाह.. यह काफ़ी नया और दिलचस्प है। मानो जैसे सरिया और कंक्रीट का कॉम्बिनेशन खोज लिया हो... खैर, यह थोड़ी ज़्यादा बात हो जाएगी, लेकिन अच्छा है।
#! shebang ठीक उसी समय Dockerfile में
#comment character होने की वजह से इस तरह की तरकीब चल जाती है..अब आगे से
build-run-test.shजैसी अलग फ़ाइल की बजाय इसे Dockerfile में ही डालना चाहिए।यह काफ़ी मज़ेदार है. haha "इसे इस्तेमाल क्यों नहीं करना चाहिए?"
Hacker News टिप्पणियाँ
nix-shell shebang के उपयोग का उदाहरण
nix-shellshebang का उपयोग करके, सभी ज़रूरी dependencies शामिल करने वाली executable script बनाने का तरीका समझाया गया है.chmod +x), यह निर्दिष्ट dependencies के साथ executable बन जाती है./usr/bin/envके-S/--split-stringविकल्प-Sविकल्प का विवरण.Docker और architecture compatibility
single-file application पर राय
Docker के विकल्प के रूप में Podman और bubblewrap का उल्लेख
heredocs का उपयोग करने वाले single-file project
"single file" के प्रति जुनून की आलोचना
self-consuming script pattern
sedसे tags के बीच की script निकालने का तरीका समझाया गया है.shebang स्थिति में
guix shellका उपयोग करने का तरीकाguix shellका उदाहरण दिया गया है.खुद build और run होने वाला Dockerfile