33# Copyright 2018-2023 contributors to the Marquez project
44# SPDX-License-Identifier: Apache-2.0
55#
6- # Usage: $ ./down.sh
6+ # Usage: $ ./down.sh [FLAGS]
77
88set -e
99
@@ -12,16 +12,29 @@ title() {
1212}
1313
1414usage () {
15- echo " usage: ./$( basename -- ${0} ) "
15+ echo " usage: ./$( basename -- ${0} ) [FLAGS] "
1616 echo " A script used to bring down Marquez when run via Docker"
1717 echo
18+ title " EXAMPLES:"
19+ echo " # Stop and remove all containers"
20+ echo " $ ./down.sh"
21+ echo
22+ echo " # Stop and remove all containers, remove volumes"
23+ echo " $ ./down.sh -v"
24+ echo
25+ title " FLAGS:"
26+ echo " -v, --volumes remove created volumes"
27+ echo " -h, --help show help for script"
28+ echo
1829}
1930
2031# Change working directory to project root
2132project_root=$( git rev-parse --show-toplevel)
2233cd " ${project_root} /"
2334
2435compose_files=" -f docker-compose.yml"
36+
37+ # Default args
2538compose_args=" --remove-orphans"
2639
2740# Parse args
@@ -31,22 +44,14 @@ while [ $# -gt 0 ]; do
3144 usage
3245 exit 0
3346 ;;
47+ -v|' --volumes' )
48+ compose_args+=" -v"
49+ ;;
3450 esac
3551 shift
3652done
3753
3854# We can ignore the tag and port(s) when cleaning up running
3955# containers and volumes
40- TAG=any
41-
42- API_PORT=${RANDOM}
43- API_ADMIN_PORT=${RANDOM}
44- WEB_PORT=${RANDOM}
45- TAG=${RANDOM}
46-
47- docker compose $compose_files down $compose_args
48-
49- docker volume rm marquez_data && \
50- docker volume rm marquez_db-backup && \
51- docker volume rm marquez_db-conf && \
52- docker volume rm marquez_db-init
56+ API_PORT=${RANDOM} API_ADMIN_PORT=${RANDOM} WEB_PORT=${RANDOM} TAG=${RANDOM} \
57+ docker compose $compose_files down $compose_args
0 commit comments