26 lines
792 B
Bash
26 lines
792 B
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
COMPOSE_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
|
|
ENV_FILE="${1:-$COMPOSE_DIR/env/dev.env.example}"
|
|
USE_MOCK="${USE_MOCK:-0}"
|
|
|
|
FILES=(-f "$COMPOSE_DIR/docker-compose.dev.yaml")
|
|
ENV_FILES=(--env-file "$ENV_FILE")
|
|
|
|
if [[ "$USE_MOCK" == "1" ]]; then
|
|
FILES+=(-f "$COMPOSE_DIR/docker-compose.mock.yaml")
|
|
ENV_FILES+=(--env-file "$COMPOSE_DIR/env/mock.env.example")
|
|
fi
|
|
|
|
echo "Validating compose config..."
|
|
docker compose "${ENV_FILES[@]}" "${FILES[@]}" config > /tmp/compose-validated.yaml
|
|
echo "Config written to /tmp/compose-validated.yaml"
|
|
|
|
echo "Starting stack..."
|
|
docker compose "${ENV_FILES[@]}" "${FILES[@]}" up -d
|
|
|
|
echo "Stack started. To stop: docker compose ${ENV_FILES[*]} ${FILES[*]} down"
|