if [ -n "${SIZE_MEM}" ]; then
ARGS="${ARGS} --memory=${SIZE_MEM}M"
fi
-if [ -z "${DISK_SUBDIR}" ]; then
- DISK_SUBDIR='/virt-1'
-fi
-
-# disks
-if [ x"${1}" = x"init" ]; then
- shift
- docker pull ${IMAGE}
- i=0
- for d in ${DISKS}; do
- i=$((i+1))
- mkdir /data/${i}${DISK_SUBDIR} 2>/dev/null || :
- done
- mkdir /scratch${SCRATCH_SUBDIR} 2>/dev/null || :
-
- if [ ! -f ~/.ssh/id_rsa_docker ]; then
- ssh-keygen -t rsa -N '' -f ~/.ssh/id_rsa_docker
- cp -p ~/.ssh/id_rsa_docker.pub ~/.ssh/authorized_keys_docker
- if [ -f `dirname $0`/config/authorized_keys ]; then
- cat `dirname $0`/config/authorized_keys >> ~/.ssh/authorized_keys_docker
- fi
+# ==== init ====
+if [ ! -f ~/.ssh/id_rsa_docker ]; then
+ ssh-keygen -t rsa -N '' -f ~/.ssh/id_rsa_docker
+ cp -p ~/.ssh/id_rsa_docker.pub ~/.ssh/authorized_keys_docker
+ if [ -f `dirname $0`/config/authorized_keys ]; then
+ cat `dirname $0`/config/authorized_keys >> ~/.ssh/authorized_keys_docker
fi
fi
-i=0
-for d in ${DISKS}; do
- i=$((i+1))
- ARGS="${ARGS} -v /data/${i}${DISK_SUBDIR}:/data/${i}"
+for m in ${MOUNTS}; do
+ loc_dir=`echo ${m} | cut -d: -f1`
+ cont_dir=`echo ${m} | cut -d: -f2`
+
+ mkdir ${loc_dir} 2>/dev/null || :
+ ARGS="${ARGS} -v ${loc_dir}:${cont_dir}"
done
-ARGS="${ARGS} -v /scratch${SCRATCH_SUBDIR}:/scratch"
docker run -itd \
-v ~/.ssh/authorized_keys_docker:/root/.ssh/authorized_keys \
NIP_HEX=`printf "%02x\n" ${NIP}`
NVIRT_HEX=`printf "%02x\n" ${NVIRT}`
+DISK_SUBDIR="/virt-${NVIRT}"
cat <<EOF
export FACTER_fqdn="hador-${NVIRT}.ics.muni.cz"
export SIZE_SWAP="0"
export SIZE_MEM="61440"
export SIZE_CPU="16"
-export DISKS=""
-export DISK_SUBDIR=""
-export SCRATCH_SUBDIR=""
+export MOUNTS="/data${DISK_SUBDIR}:/data /home:/home /scratch:/scratch"
EOF
NIP_HEX=`printf "%02x\n" ${NIP}`
NVIRT_HEX=`printf "%02x\n" ${NVIRT}`
+DISK_SUBDIR="/virt-${NVIRT}"
cat <<EOF
export FACTER_fqdn="hador-c${N}-${NVIRT}.ics.muni.cz"
export SIZE_SWAP="0"
export SIZE_MEM="61440"
export SIZE_CPU="16"
-export DISKS=""
-export DISK_SUBDIR="/virt-${NVIRT}"
-export SCRATCH_SUBDIR="/virt-${NVIRT}"
+export MOUNTS="/data${DISK_SUBDIR}:/data"
EOF
N_HEX=`printf "%02x\n" ${N}`
NVIRT_HEX=`printf "%02x\n" ${NVIRT}`
+DISK_SUBDIR="/virt-${NVIRT}"
+SCRATCH_SUBDIR="/virt-${NVIRT}"
+
+for i in `seq 1 12`; do
+ MOUNTS="${MOUNTS} /data/${i}${DISK_SUBDIR}:/data/${i}"
+done
+MOUNTS="${MOUNTS} /scratch${SCRATCH_SUBDIR}:/scratch"
+MOUNTS=`echo ${MOUNTS}`
cat <<EOF
export FACTER_fqdn="hador${N}-${NVIRT}.ics.muni.cz"
export SIZE_SWAP="0"
export SIZE_MEM="61440"
export SIZE_CPU="16"
-export DISKS="/dev/sda /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh /dev/sdk /dev/sdl /dev/sdm /dev/sdn"
-export DISK_SUBDIR="/virt-${NVIRT}"
-export SCRATCH_SUBDIR="/virt-${NVIRT}"
+export MOUNTS="${MOUNTS}"
EOF