59 lines
1.2 KiB
Bash
Executable File
59 lines
1.2 KiB
Bash
Executable File
#!/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 <job_name; one of (${ValidJobs[@]})>"
|
|
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}
|