diff --git a/common.shinc b/common.shinc index 62fcb25..eaf6912 100644 --- a/common.shinc +++ b/common.shinc @@ -34,6 +34,19 @@ stop() { start() { __msg "Starting container... " 0 no + docker inspect "${SERVICE_NAME}" > /dev/null 2>&1 + + if [[ $? -ne 0 ]]; then + init + + CURRENT_STATUS=$(docker inspect --format "{{.State.Running}}" "${SERVICE_NAME}") + + if [[ "${CURRENT_STATUS}" == "true" ]]; then + return 0 + fi + fi + + STATUS=$(docker start ${SERVICE_NAME} 2>&1) if [[ $? -ne 0 ]]; then __err "${STATUS}" diff --git a/dev-proxy/run b/dev-proxy/run index c725e8b..3e53d5d 100755 --- a/dev-proxy/run +++ b/dev-proxy/run @@ -18,6 +18,10 @@ source ${SCRIPT_PATH}/../common.shinc source ${SCRIPT_PATH}/env.shinc 2> /dev/null init() { + makePrivate +} + +makePrivate() { docker pull ${IMAGE_NAME}:${IMAGE_VERSION} || return $? NETWORKS=(${PROXY_NETWORK}) @@ -38,6 +42,26 @@ init() { __ask_to_start } +makePublic() { + docker pull ${IMAGE_NAME}:${IMAGE_VERSION} || return $? + + NETWORKS=(${PROXY_NETWORK}) + __createNetworks + + docker create \ + --name ${SERVICE_NAME} \ + -v /var/run/docker.sock:/tmp/docker.sock:ro \ + -v dev-proxy:/root/.caddy \ + --restart=unless-stopped \ + -p 80:80 \ + -p 443:443 \ + --net ${PROXY_NETWORK} \ + ${IMAGE_NAME}:${IMAGE_VERSION} + + [[ $? -ne 0 ]] && return 1 + + __ask_to_start +} reload() { docker exec ${SERVICE_NAME} pkill -USR1 caddy