Guest User

Untitled

a guest
Jan 17th, 2018
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.61 KB | None | 0 0
  1. FROM alpine:3.7
  2.  
  3. RUN apk add --no-cache "mariadb<10.2"
  4. && rm -f /var/cache/apk/*
  5.  
  6. COPY mysql_start.sh /mysql_start.sh
  7.  
  8. EXPOSE 3306
  9.  
  10. CMD ["/mysql_start.sh"]
  11.  
  12. #!/bin/sh
  13.  
  14. # Atribuição de crédito!
  15. # Arquivo baseado no original startup.sh de wangxian/alpine-mysql (Github)
  16.  
  17. if [ "$MYSQL_CHARACTER" = "" ]; then
  18. MYSQL_CHARACTER=utf8
  19. fi
  20.  
  21. if [ "$MYSQL_COLLATION_SERVER" = "" ]; then
  22. MYSQL_COLLATION_SERVER=utf8_unicode_ci
  23. fi
  24.  
  25. if [ "$MYSQL_PORT" = "" ]; then
  26. MYSQL_PORT=3306
  27. fi
  28.  
  29. echo "=> Gerando arquivo my.cnf"
  30. {
  31. echo '[mysqld]';
  32. echo "character-set-server = $MYSQL_CHARACTER";
  33. echo "collation-server = $MYSQL_COLLATION_SERVER";
  34. echo 'datadir = /var/lib/mysql';
  35. echo "port = $MYSQL_PORT";
  36. echo 'log-bin = /var/lib/mysql/mysql-bin';
  37. echo 'socket = /tmp/mysqld.sock';
  38. echo 'skip-host-cache';
  39. echo 'skip-name-resolve';
  40. } | tee /etc/mysql/my.cnf
  41.  
  42. if [ ! -d /var/lib/mysql/mysql ]; then
  43.  
  44. echo "=> Criando diretório de dados..."
  45.  
  46. mysql_install_db --user=root > /dev/null
  47.  
  48. if [ "$MYSQL_ROOT_PASSWORD" = "" ]; then
  49. MYSQL_ROOT_PASSWORD=root
  50. fi
  51.  
  52. echo "=> Senha do usuário root definida para: $MYSQL_ROOT_PASSWORD"
  53.  
  54. MYSQL_DATABASE=${MYSQL_DATABASE:-""}
  55. MYSQL_USER=${MYSQL_USER:-""}
  56. MYSQL_PASSWORD=${MYSQL_PASSWORD:-""}
  57.  
  58. tfile=`mktemp`
  59.  
  60. cat << EOF > $tfile
  61. USE mysql;
  62. FLUSH PRIVILEGES;
  63. GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY "$MYSQL_ROOT_PASSWORD" WITH GRANT OPTION;
  64. GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
  65. UPDATE user SET password=PASSWORD("") WHERE user='root' AND host='localhost';
  66. EOF
  67.  
  68. if [ "$MYSQL_DATABASE" != "" ]; then
  69. echo "=> Criando banco: $MYSQL_DATABASE"
  70. echo "CREATE DATABASE IF NOT EXISTS `$MYSQL_DATABASE` CHARACTER SET utf8 COLLATE utf8_general_ci;" >> $tfile
  71.  
  72. if [ "$MYSQL_USER" != "" ]; then
  73. echo "=> Criando usuário: $MYSQL_USER com a senha: $MYSQL_PASSWORD"
  74. echo "GRANT ALL ON `$MYSQL_DATABASE`.* to '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD';" >> $tfile
  75. fi
  76. fi
  77.  
  78. /usr/bin/mysqld --user=root --bootstrap --verbose=0 < $tfile
  79. rm -f $tfile
  80. fi
  81.  
  82. exec /usr/bin/mysqld --user=root --console
  83.  
  84. version: "3.3"
  85. services:
  86. mysql:
  87. container_name: mysql
  88. image: alpine:db
  89. environment:
  90. - MYSQL_ROOT_PASSWORD=root1
  91. volumes:
  92. - ./mysql/tmp:/var/lib/mysql
  93. restart: on-failure
  94. ports:
  95. - 3306:3306
  96.  
  97. web:
  98. container_name: web
  99. image: php:7.2-apache
  100. volumes:
  101. - ./projeto/:/var/www
  102. - ./apache/:/etc/apache2/sites-enabled/
  103. working_dir: /var/www
  104. depends_on:
  105. - mysql
  106. links:
  107. - mysql
  108. restart: on-failure #always
  109. ports:
  110. - 80:80
Add Comment
Please, Sign In to add comment