Advertisement
Guest User

Untitled

a guest
Apr 16th, 2019
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.44 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. PS4='+\[\033[01;34m\](${BASH_SOURCE[0]}:${LINENO})\[\033[00m\]: ${FUNCNAME[0]:+\[\033[01;33m\]${FUNCNAME[ 0]}()\[\033[00m\]: }'
  4.  
  5. set -eu
  6.  
  7. # Tear Down previous run
  8. {
  9. docker container rm -f db client || true
  10. docker network rm majidi || true
  11. } 2>/dev/null
  12.  
  13. # Setup network
  14. docker network create majidi
  15.  
  16. db_password="sekret${RANDOM}"
  17.  
  18. function banner() {
  19. echo
  20. echo "================================================"
  21. echo "$*"
  22. echo
  23. }
  24.  
  25. function is_db_up() {
  26. echo 'SELECT 1;' |
  27. docker run \
  28. "--name=client" \
  29. "--network=majidi" \
  30. "--rm" \
  31. "--interactive" \
  32. mariadb:latest \
  33. mysql \
  34. "--host=db" \
  35. "--user=root" \
  36. "--password=${db_password}" \
  37. mysql
  38. }
  39.  
  40. banner "Using 'root' password: ${db_password}"
  41.  
  42. banner "Starting the container with the name and hostname 'db'..."
  43. docker run \
  44. "--name=db" \
  45. "--network=majidi" \
  46. "--env=MYSQL_ROOT_PASSWORD=${db_password}" \
  47. "--detach" \
  48. mariadb:latest
  49.  
  50. while ! is_db_up; do
  51. echo "waiting for 'db' to start..."
  52. sleep 1
  53. done
  54. banner "The database is started!"
  55.  
  56. banner "This is a mysql client into the MariaDB running in another client."
  57. echo 'SELECT TABLE_NAME, TABLE_TYPE FROM TABLES ORDER BY TABLE_NAME LIMIT 10;' |
  58. docker run \
  59. --name=client \
  60. --network=majidi \
  61. --rm \
  62. --interactive \
  63. mariadb:latest \
  64. mysql \
  65. "--host=db" \
  66. "--user=root" \
  67. "--password=${db_password}" \
  68. information_schema
  69.  
  70. # EOF
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement