run.sh 534 B

12345678910111213141516171819202122232425262728293031
  1. #!/bin/bash
  2. set -eo pipefail
  3. dir="$(dirname "$(readlink -f "$BASH_SOURCE")")"
  4. image="$1"
  5. cname="mysql-container-$RANDOM-$RANDOM"
  6. cid="$(
  7. docker run -d \
  8. -e MYSQL_ALLOW_EMPTY_PASSWORD=1 \
  9. --name "$cname" \
  10. "$image" \
  11. --log-bin="foo-$RANDOM" \
  12. --server-id="$RANDOM"
  13. )"
  14. trap "docker rm -vf $cid > /dev/null" EXIT
  15. mysql() {
  16. docker run --rm -i \
  17. --link "$cname":mysql \
  18. --entrypoint mysql \
  19. "$image" \
  20. -hmysql \
  21. --silent \
  22. "$@"
  23. }
  24. . "$dir/../../retry.sh" --tries 20 "echo 'SELECT 1' | mysql"
  25. # yay, must be OK