#!/bin/bash ValidJobs=('BNBFUT_CLD21' 'BNBSPOT_CLD21' 'COINBASE_CLD21' 'BNBFUT_CVTTDATA' 'BNBSPOT_CVTTDATA' 'COINBASE_CVTTDATA') # runs on host to start container usage() { echo "Usage: $0 " exit 1 } is_valid() { local job=$1 for valid_job in "${ValidJobs[@]}"; do # echo "job=$job valid_job=$valid_job" if [[ "${job}" == "${valid_job}" ]]; then return 0 fi done return 1 } is_container_running() { local container_name=$1 if [ "$(docker ps --filter "name=^/${container_name}$" --filter "status=running" -q)" ]; then return 0 # true else return 1 # false fi } job=${1} if ! is_valid "${job}"; then usage fi ContainerName="md_recorder.${job}" if is_container_running "$ContainerName"; then echo "Container ${ContainerName} is already running. Aborted." exit fi Cmd="docker run" Cmd="${Cmd} -d" Cmd="${Cmd} --rm" Cmd="${Cmd} --network=host" Cmd="${Cmd} --pull=always" Cmd="${Cmd} --name=${ContainerName}" Cmd="${Cmd} -v /home/cvtt/prod/data:/app/data" Cmd="${Cmd} -v /home/cvtt/prod/logs:/logs" Cmd="${Cmd} cloud21.cvtt.vpn:5500/md_recorder:latest" Cmd="${Cmd} ${job}" echo ${Cmd} eval ${Cmd}