42 lines
1.1 KiB
Bash
Executable file
42 lines
1.1 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
# abort on first error
|
|
set -e
|
|
|
|
TAG="$1"
|
|
|
|
if [[ -z "$TAG" ]]; then
|
|
echo
|
|
echo "Error: please provide a docker image tag as second argument, e.g.:"
|
|
echo "./deploy.sh 1.0.0"
|
|
echo
|
|
exit 1
|
|
fi
|
|
|
|
# Workaround for SSL: CERTIFICATE_VERIFY_FAILED error with docker-compose
|
|
if [ -z "$CURL_CA_BUNDLE" ]; then
|
|
if [ ! -f ~/Downloads/cacert-2021-10-26.pem ]; then
|
|
curl https://curl.se/ca/cacert-2021-10-26.pem -o ~/Downloads/cacert-2021-10-26.pem
|
|
fi
|
|
export CURL_CA_BUNDLE=~/Downloads/cacert-2021-10-26.pem
|
|
fi
|
|
|
|
# make sure we're using the local docker host first
|
|
eval "$(triton env --unset)"
|
|
|
|
# build the image locally
|
|
docker build --tag hub.greenbaum.cloud/miom.space:"$TAG" .
|
|
|
|
# login to Greenbaum's private docker registry and push the image
|
|
docker login hub.greenbaum.cloud
|
|
docker push hub.greenbaum.cloud/miom.space:"$TAG"
|
|
|
|
# change DOCKER_HOST env var to remote docker host (Greenbaum's docker API)
|
|
eval "$(triton --profile lev-1-pub.solar env)"
|
|
|
|
# use our tag for docker-compose
|
|
export DEPLOY_TAG="$TAG"
|
|
|
|
# deploy on Greenbaum Cloud
|
|
docker-compose up -d
|