dayoff/docker/deploy-prod

35 lines
646 B
Bash
Executable File

#!/usr/bin/env sh
set -eux
source /home/dayoff/.env
IMAGE=cr.yandex/crplfk0168i4o8kd7ade/dayoff
DATA_PATH=/home/dayoff/data
CONTAINER_NAME="${CONTAINER_PREFIX}-server"
mkdir -p "$DATA_PATH"
TTY=
if [ -t 1 ] ; then
TTY=-t
fi
cat /home/dayoff/yandex_cloud_docker_registry_key.json | docker login --username json_key --password-stdin cr.yandex
docker pull "${IMAGE}"
docker stop "${CONTAINER_NAME}" || true
docker rm "${CONTAINER_NAME}" || true
docker run $TTY \
--init \
--detach \
--name "${CONTAINER_NAME}" \
--restart=unless-stopped \
-u "$(id -u):$(id -g)" \
-p "$WEB_SERVER_PORT:3000" \
-v "$DATA_PATH:/opt/dayoff" \
$IMAGE