Selaa lähdekoodia

Merge branch 'master' of ssh://github.com/dotcloud/docker

Solomon Hykes 12 vuotta sitten
vanhempi
commit
681e452832
3 muutettua tiedostoa jossa 46 lisäystä ja 2 poistoa
  1. 4 0
      contrib/README
  2. 2 2
      contrib/install.sh
  3. 40 0
      contrib/mkimage-busybox.sh

+ 4 - 0
contrib/README

@@ -0,0 +1,4 @@
+The `contrib` directory contains scripts, images, and other helpful things
+which are not part of the core docker distribution. Please note that they
+could be out of date, since they do not receive the same attention as the
+rest of the repository.

+ 2 - 2
install.sh → contrib/install.sh

@@ -38,14 +38,14 @@ fi
 echo "Downloading docker binary and uncompressing into /usr/local/bin..."
 curl -s http://get.docker.io/builds/$(uname -s)/$(uname -m)/docker-master.tgz |
 tar -C /usr/local/bin --strip-components=1 -zxf- \
-docker-master/docker docker-master/dockerd
+docker-master/docker
 
 if [ -f /etc/init/dockerd.conf ]
 then
   echo "Upstart script already exists."
 else
   echo "Creating /etc/init/dockerd.conf..."
-  echo "exec /usr/local/bin/dockerd" > /etc/init/dockerd.conf
+  echo "exec /usr/local/bin/docker -d" > /etc/init/dockerd.conf
 fi
 
 echo "Starting dockerd..."

+ 40 - 0
contrib/mkimage-busybox.sh

@@ -0,0 +1,40 @@
+#!/bin/bash
+# Generate a very minimal filesystem based on busybox-static,
+# and load it into the local docker under the name "busybox".
+
+BUSYBOX=$(which busybox)
+[ "$BUSYBOX" ] || {
+    echo "Sorry, I could not locate busybox."
+    echo "Try 'apt-get install busybox-static'?"
+    exit 1
+}
+
+set -e
+ROOTFS=/tmp/rootfs-busybox-$$-$RANDOM
+mkdir $ROOTFS
+cd $ROOTFS
+
+mkdir bin etc dev dev/pts lib proc sys tmp
+touch etc/resolv.conf
+cp /etc/nsswitch.conf etc/nsswitch.conf
+echo root:x:0:0:root:/:/bin/sh > etc/passwd
+echo root:x:0: > etc/group
+ln -s lib lib64
+ln -s bin sbin
+cp $BUSYBOX bin
+for X in $(busybox --list)
+do
+    ln -s busybox bin/$X
+done
+rm bin/init
+ln bin/busybox bin/init
+cp /lib/x86_64-linux-gnu/lib{pthread,c,dl,nsl,nss_*}.so.* lib
+cp /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 lib
+for X in console null ptmx random stdin stdout stderr tty urandom zero
+do
+    cp -a /dev/$X dev
+done
+
+tar -cf- . | docker put busybox
+docker run -i -a -u root busybox /bin/echo Success.
+