From: František Dvořák Date: Sun, 10 Jan 2016 23:24:22 +0000 (+0100) Subject: Docker. X-Git-Tag: v1.0.0~11 X-Git-Url: http://scientific.zcu.cz/git/?a=commitdiff_plain;h=e0fc3622fa299a0dac287c025df2e507d3dd6b6a;p=virtualization.git Docker. --- diff --git a/HOWTO-docker.sh b/HOWTO-docker.sh new file mode 100644 index 0000000..1bee4f8 --- /dev/null +++ b/HOWTO-docker.sh @@ -0,0 +1,38 @@ +Images +====== + +docker images #list +docker rmi $IMAGES #remove +docker build -t $NAME:$TAG . + + +Containers +========== + +docker ps +docker ps --all +docker run -itd --name=$NAME --mac-address=$MAC --hostname=$HOSTNAME --memory=61440G $IMAGE /sbin/init +docker stop $IDS +docker rm $IDS + + +Network +======= + +docker inspect --format='{{json .NetworkSettings.Networks}}' $ID +eval ip=`docker inspect --format='{{json .NetworkSettings.Networks.bridge.IPAddress}}' $ID` + + +Installation +============ + +#! /bin/sh +cat > /etc/apt/sources.list.d/docker.list <> /etc/default/docker diff --git a/HOWTO.sh b/HOWTO-kvm.sh similarity index 100% rename from HOWTO.sh rename to HOWTO-kvm.sh diff --git a/docker.sh b/docker.sh new file mode 100755 index 0000000..7c9c23a --- /dev/null +++ b/docker.sh @@ -0,0 +1,47 @@ +#! /bin/sh -xe + +#./launch.sh cfg.sh --name=hadoop1 --hostname=`hostname`-hadoop1 --mac-address=02:42:ac:11:00:02 --memory=61440G + +if [ -z "${1}" ]; then + echo "Usage:" + echo + echo "$0 cfg_hostname.sh" + exit 1 +fi +. ./$1 || exit 1 +shift + +if [ -n "${FACTER_hostname}" ]; then + ARGS="${ARGS} --name=${FACTER_hostname} --hostname=${FACTER_hostname}" +fi +if [ -n "${FACTER_macaddress}" ]; then + ARGS="${ARGS} --mac-address=${FACTER_macaddress}M" +fi +if [ -n "${FACTER_macaddress}" ]; then + ARGS="${ARGS} --memory=${SIZE_MEM}M" +fi +if [ -z "${DISK_SUBDIR}" ]; then + DISK_SUBDIR='/virt-1' +fi + +echo docker run -itd \ + -v ~/.k5login:/root/.k5login \ + -v ~/.ssh:/root/.ssh \ + -v /etc/krb5.conf:/etc/krb5.conf \ + -v /data/1${DISK_SUBDIR}:/data/1 \ + -v /data/2${DISK_SUBDIR}:/data/2 \ + -v /data/3${DISK_SUBDIR}:/data/3 \ + -v /data/4${DISK_SUBDIR}:/data/4 \ + -v /data/5${DISK_SUBDIR}:/data/5 \ + -v /data/6${DISK_SUBDIR}:/data/6 \ + -v /data/7${DISK_SUBDIR}:/data/7 \ + -v /data/8${DISK_SUBDIR}:/data/8 \ + -v /data/9${DISK_SUBDIR}:/data/9 \ + -v /data/10${DISK_SUBDIR}:/data/10 \ + -v /data/11${DISK_SUBDIR}:/data/11 \ + -v /data/12${DISK_SUBDIR}:/data/12 \ + -v /scratch${DISK_SUBDIR}:/scratch \ + "${ARGS}" \ + "$@" \ + hadoop-meta \ + /sbin/init diff --git a/docker/Dockerfile.meta b/docker/Dockerfile.meta new file mode 100644 index 0000000..5538222 --- /dev/null +++ b/docker/Dockerfile.meta @@ -0,0 +1,13 @@ +FROM debian:7 +MAINTAINER FrantiÅ¡ek Dvořák + +RUN apt-get update \ +&& apt-get install -y openssh-server puppet + +RUN sed -e 's/^#\(GSSAPIAuthentication\).*/\1 yes/' -i /etc/ssh/sshd_config +RUN sed -e 's/\(\[main\]\)/\1\nserver=thorin2.ics.muni.cz/' -i /etc/puppet/puppet.conf + +# ==== cleanup ==== + +RUN apt-get clean \ +&& rm -rf /var/lib/apt/lists/* diff --git a/docker/Dockerfile.puppetlabs b/docker/Dockerfile.puppetlabs new file mode 100644 index 0000000..70ef149 --- /dev/null +++ b/docker/Dockerfile.puppetlabs @@ -0,0 +1,23 @@ +FROM debian:7 +MAINTAINER FrantiÅ¡ek Dvořák + +# ==== ssh ==== + +RUN apt-get update \ +&& apt-get install -y openssh-server \ +&& sed -e 's/^#\(GSSAPIAuthentication\).*/\1 yes/' -i /etc/ssh/sshd_config + +# ==== puppet ==== + +RUN apt-get update && apt-get install -y wget +RUN wget http://apt.puppetlabs.com/puppetlabs-release-wheezy.deb -P /tmp \ +&& dpkg -i /tmp/puppetlabs-release-wheezy.deb \ +&& rm -fv /tmp/puppetlabs-release-wheezy.deb + +RUN apt-get update && apt-get install -y puppet +RUN sed -e 's/\(\[main\]\)/\1\nserver=myriad7.zcu.cz/' -i /etc/puppet/puppet.conf + +# ==== cleanup ==== + +RUN apt-get clean \ +&& rm -rf /var/lib/apt/lists/*