You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/DOCKER.hi.md
+33-10Lines changed: 33 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -53,7 +53,12 @@ docker info
53
53
docker run hello-world
54
54
```
55
55
56
-
यह image overlay-backed hosts के साथ compatibility के लिए inner Docker daemon को default रूप से `DIND_STORAGE_DRIVER=vfs` पर चलाती है। जिन hosts पर nested overlay mounts supported हैं, वहां faster local runs के लिए `-e DIND_STORAGE_DRIVER=overlay2` pass करें।
56
+
यह image inner Docker daemon को default रूप से `DIND_STORAGE_DRIVER=fuse-overlayfs` पर चलाती है। यह एक **copy-on-write** driver है, इसलिए कई गीगाबाइट की Hive Mind images डिस्क पर लगभग अपने असली आकार जितनी ही जगह (एक बार) लेती हैं — जबकि `vfs` हर layer की पूरी copy बनाता है और on-disk footprint को image आकार के कई गुना तक बढ़ा देता है, जिससे डिस्क `failed to register layer: no space left on device` के साथ भर जाती है ([issue #1914](https://github.com/link-assistant/hive-mind/issues/1914))। `fuse-overlayfs` overlay-on-overlay भी काम करता है (वही compatibility जिसके लिए शुरू में `vfs` चुना गया था), image में `fuse-overlayfs` binary पहले से मौजूद है, और Hive Mind DinD container को `--privileged` के साथ launch करता है, इसलिए `/dev/fuse` उपलब्ध रहता है। Override विकल्प:
57
+
58
+
-`-e DIND_STORAGE_DRIVER=overlay2` — nested overlay mounts को support करने वाले hosts पर तेज़, लेकिन overlay-backed hosts पर fail हो सकता है;
59
+
-`-e DIND_STORAGE_DRIVER=vfs` — केवल अंतिम विकल्प (compatibility fallback); कई गुना ज़्यादा डिस्क लेता है और यही वह configuration है जिसने issue #1914 पैदा किया।
60
+
61
+
> **पुरानी `vfs` image पर container पहले से चल रहा है?** bot container के `docker run` में `-e DIND_STORAGE_DRIVER=fuse-overlayfs` जोड़ें और container को फिर से बनाएं — image rebuild की ज़रूरत नहीं।
57
62
58
63
Shared hosts पर, उपलब्ध हो तो Sysbox runtime को प्राथमिकता दें:
59
64
@@ -65,13 +70,16 @@ DinD image `konard/hive-mind:latest` से अलग publish होती ह
65
70
66
71
#### Host-image passthrough (मल्टी-GB images फिर से download होने से बचाएं)
67
72
68
-
जब bot DinD image के अंदर `--isolation docker` के साथ चलता है, तो हर task एक _nested_
69
-
`docker run konard/hive-mind-dind:latest …` के रूप में launch होता है। वह nested `docker run`
70
-
**inner** dockerd से बात करता है, जिसका image store शुरू में **खाली** होता है (deploy
71
-
`docker commit` से पहले `/var/lib/docker` को wipe कर देता है)। इसलिए Docker
72
-
`Unable to find image '…' locally` report करता है और एक नई copy pull करता है — और Hive Mind
73
-
images कई gigabytes की होती हैं, इसलिए पहला isolated task एक ऐसी image को re-download करने में
74
-
बहुत समय लगा सकता है (या disk खत्म कर सकता है) जो **host के पास पहले से मौजूद** है। देखें
73
+
जब bot release DinD image के अंदर `--isolation docker` के साथ चलता है, तो हर task एक _nested_
74
+
`docker run konard/hive-mind-dind:<release-tag> …` के रूप में launch होता है। Release images
75
+
published `HIVE_MIND_VERSION` से `HIVE_MIND_DOCKER_ISOLATION_IMAGE_TAG` bake करती हैं, इसलिए
76
+
`konard/hive-mind-dind:latest` से started parent container भी child containers के लिए वही
77
+
immutable release tag उपयोग करता है। वह nested `docker run`**inner** dockerd से बात करता है,
78
+
जिसका image store शुरू में **खाली** होता है (deploy `docker commit` से पहले `/var/lib/docker`
79
+
को wipe कर देता है)। इसलिए Docker `Unable to find image '…' locally` report करता है और एक
80
+
नई copy pull करता है — और Hive Mind images कई gigabytes की होती हैं, इसलिए पहला isolated task
81
+
एक ऐसी image को re-download करने में बहुत समय लगा सकता है (या disk खत्म कर सकता है) जो
82
+
**host के पास पहले से मौजूद** है। देखें
75
83
[issue #1914](https://github.com/link-assistant/hive-mind/issues/1914) और
0 commit comments