mirror of
https://gitlab.ub.uni-bielefeld.de/sfb1288inf/nopaque.git
synced 2024-11-15 01:05:42 +00:00
Add dind_swarm setup and config.
This commit is contained in:
parent
6c9b43367b
commit
8a3e5073a3
26
dind_swarm.yml
Normal file
26
dind_swarm.yml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
storage:
|
||||||
|
command: ["-p", "-s", "opaque_storage;/srv/opaque/storage;no;no;no;opaque", "-u", "opaque;opaque"]
|
||||||
|
image: dperson/samba:latest
|
||||||
|
ports:
|
||||||
|
- 139:139
|
||||||
|
- 445:445
|
||||||
|
restart: on-failure
|
||||||
|
volumes:
|
||||||
|
- /srv/opaque/storage:/srv/opaque/storage
|
||||||
|
worker:
|
||||||
|
image: docker:dind
|
||||||
|
ports:
|
||||||
|
- 2375
|
||||||
|
privileged: true
|
||||||
|
restart: on-failure
|
||||||
|
volumes:
|
||||||
|
- /mnt/opaque:/mnt/opaque
|
||||||
|
viz:
|
||||||
|
image: dockersamples/visualizer:latest
|
||||||
|
ports:
|
||||||
|
- 8080:8080
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
34
setup_dind_swarm.sh
Executable file
34
setup_dind_swarm.sh
Executable file
@ -0,0 +1,34 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
OPAQUE_STORAGE_MOUNT_DIRECTORY="/mnt/opaque" # Don't change this variable, unless you know what you are doing!
|
||||||
|
SWARM_MANAGER_IP=""
|
||||||
|
SWARM_WORKER_NUMBER=4
|
||||||
|
SWARM_WORKER_TOKEN=""
|
||||||
|
|
||||||
|
if [ -z ${SWARM_MANAGER_IP} ]; then
|
||||||
|
# See https://stackoverflow.com/a/25851186
|
||||||
|
SWARM_MANAGER_IP=$(ip route get 1 | awk '{print $(NF-2);exit}')
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z ${SWARM_WORKER_TOKEN} ]; then
|
||||||
|
docker swarm leave --force > /dev/null 2>&1
|
||||||
|
docker swarm init --advertise-addr ${SWARM_MANAGER_IP} > /dev/null 2>&1
|
||||||
|
SWARM_WORKER_TOKEN=$(docker swarm join-token -q worker)
|
||||||
|
fi
|
||||||
|
|
||||||
|
docker-compose --file dind_swarm.yml up --detach storage
|
||||||
|
sleep 3
|
||||||
|
echo "Mounting network storage to host system..."
|
||||||
|
sudo mkdir -p /mnt/opaque
|
||||||
|
sudo mount -t cifs -o gid=${USER},password=opaque,uid=${USER},user=opaque,vers=3.0 //localhost/opaque_storage /mnt/opaque
|
||||||
|
echo "Done"
|
||||||
|
docker-compose --file dind_swarm.yml up --detach --scale worker=${SWARM_WORKER_NUMBER} worker
|
||||||
|
sleep 10
|
||||||
|
echo "Add workers to swarm"
|
||||||
|
|
||||||
|
for i in $(seq 1 ${SWARM_WORKER_NUMBER}); do
|
||||||
|
docker-compose --file dind_swarm.yml exec --index=${i} worker docker swarm join --token ${SWARM_WORKER_TOKEN} ${SWARM_MANAGER_IP}:2377
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
docker-compose --file dind_swarm.yml up --detach viz
|
Loading…
Reference in New Issue
Block a user