-
Bocker
- Bocker, Docker का एक सरल संस्करण है, जिसे लगभग 100 लाइनों के bash में बनाया गया है.
-
Prerequisites
- Bocker चलाने के लिए आवश्यक पैकेज:
- btrfs-progs
- curl
- iproute2
- iptables
- libcgroup-tools
- util-linux >= 2.25.2
- coreutils >= 7.5
- सिस्टम कॉन्फ़िगरेशन आवश्यकताएँ:
/var/bocker पर btrfs file system माउंट होना चाहिए
bridge0 नाम का network bridge और 10.0.0.1/24 IP
/proc/sys/net/ipv4/ip_forward में IP forwarding सक्षम होना चाहिए
bridge0 से physical interface तक ट्रैफ़िक routing के लिए firewall
- आवश्यक environment को Vagrantfile का उपयोग करके सेट किया जा सकता है.
- Bocker root permissions के साथ चलता है और network interface, routing table, firewall rules को बदलता है, इसलिए इसे virtual machine में चलाना बेहतर है.
-
Example Usage
- Bocker के उपयोग के उदाहरण:
bocker pull centos 7 कमांड से CentOS 7 image लाया जा सकता है.
bocker images से image सूची देखी जा सकती है.
bocker run img_42150 cat /etc/centos-release से container में कमांड चलाया जा सकता है.
bocker ps से चल रहे container देखे जा सकते हैं.
bocker logs ps_42045 से container logs देखे जा सकते हैं.
bocker rm ps_42045 से container हटाया जा सकता है.
bocker run img_42150 yum install -y wget से package install किया जा सकता है.
bocker commit ps_42018 img_42150 से container changes commit किए जा सकते हैं.
- CPU और memory limits सेट किए जा सकते हैं.
-
Functionality: Currently Implemented
- वर्तमान में लागू सुविधाएँ:
docker build का सीमित implementation
docker pull
docker images
docker ps
docker run
docker exec
docker logs
docker commit
docker rm / docker rmi
- networking
- quota support / CGroups
-
Functionality: Not Yet Implemented
- अभी तक लागू नहीं की गई सुविधाएँ:
- data volume containers
- data volumes
- port forwarding
-
License
- यह प्रोग्राम GNU General Public License के तहत वितरित किया जाने वाला free software है.
- इसमें commercial value या किसी विशेष उद्देश्य के लिए उपयुक्तता की कोई warranty नहीं है.
1 टिप्पणियां
Hacker News की राय
proot का उपयोग करके Bag नाम का एक प्रोजेक्ट बनाया था। यह Docker का विकल्प नहीं है, cgroups से संबंधित नहीं है, और इसका CLI भी Docker से अलग है। इंटरनेट censorship को बायपास करने के लिए एक proxy chain solution विकसित किया गया था, और इसे termux में चलाना चाहा गया। उस समय termux में jdk/jre नहीं था, इसलिए proot के जरिए archlinux environment बनाकर jdk का उपयोग किया जा सकता था। यह environment कई तरह के कामों के लिए उपयुक्त था, और
bag.shनाम की script के जरिए automated environment creation और command execution संभव था। इस script का एक roadmap है जिसे 5 साल से update नहीं किया गया हैमुझे minimal bash scripts पसंद हैं, और 10 साल पहले एक hackathon में Docker, Mesos आदि का इस्तेमाल करने वाले distributed infrastructure को promote करने के लिए 40 lines of bash में एक intra-cluster load balancer बनाया था। इसके अलावा, एक colo-to-cloud transfer tool भी विकसित किया था, लेकिन अब वह खो चुका है। Shell Fu जैसी जगहों पर उपयोगी scripts के संग्रह मिल सकते हैं
जब किसी repository में "अभी implement नहीं किया गया", "करना है", "काम जारी है" जैसे संदेश हों और आखिरी commit कई साल पहले का हो, तो अच्छा लगता है। इससे यह राहत मिलती है कि अपने code में छूटी हुई todo list को फिर से देखने की ज़रूरत नहीं पड़ती
हैरानी है कि lazydocker को Docker Desktop के शानदार विकल्प के रूप में नहीं बताया गया। यह ssh के जरिए चलने वाला काफ़ी feature-complete terminal UI है
BastilleBSD, BSD में jails को manage करने का एक tool है, जो Docker में मिलने वाली कई संरचनाओं का उपयोग करता है। BSD के दूसरे jail management software की तुलना में इसमें dependencies कम हैं, इसलिए यह पसंद है
व्यावहारिक उपयोगिता से अलग, implementation से सीखने लायक बहुत कुछ है
GitHub homepage link टूटा हुआ है, इसलिए
www.हटाना चाहिएDocker का simple reimplementation संभव होना ही Docker company के सामने सबसे बड़ी समस्या है। Docker की असली value सिर्फ Docker Hub में नहीं, बल्कि Windows और Mac के लिए Docker द्वारा दिए जाने वाले integrated experience में है। यह VirtualBox और Vagrant को manually configure करने की तुलना में कहीं बेहतर अनुभव देता है
जिज्ञासा है कि Docker की शुरुआत कैसे हुई थी
जिज्ञासा है कि Docker अब तक ubuntu/debian repositories में शामिल क्यों नहीं है। यह आसान net profit साबित होगा