packer-builds

Packer Builds for LXC and Libvirt
git clone https://git.in0rdr.ch/packer-builds.git
Log | Files | Refs | Pull requests | README

mariadb.sh (1256B)


      1 #!/usr/bin/env bash
      2 
      3 set -o errexit
      4 set -o nounset
      5 set -o xtrace
      6 
      7 # install mariadb server and tools
      8 apt-get install -y mariadb-server mariadb-backup
      9 
     10 # MySql cecure install
     11 
     12 # remove anonymous user
     13 mysql -e "DELETE FROM mysql.user WHERE User='';"
     14 
     15 # disallow remote access
     16 mysql -e "DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');"
     17 
     18 # drop test database
     19 mysql -e "DROP DATABASE IF EXISTS test;"
     20 
     21 # set root password and reload privileges
     22 mysql -e "UPDATE mysql.user SET Password=PASSWORD('$MYSQL_ROOT_PASSWORD') WHERE User='root'; FLUSH PRIVILEGES;"
     23 
     24 # configure .my.cnf for root
     25 cat << EOF > /root/.my.cnf
     26 [client]
     27 user = root
     28 password = $MYSQL_ROOT_PASSWORD
     29 EOF
     30 
     31 # add additional users
     32 users=($MYSQL_ADDITIONAL_USERS)
     33 hosts=($MYSQL_ADDITIONAL_HOSTS)
     34 passwords=($MYSQL_ADDITIONAL_PASSWORDS)
     35 no_users="${#users[@]}"
     36 for ((i = 0 ; i < $no_users ; i++)); do
     37   mysql -e "CREATE USER '${users[$i]}'@'${hosts[$i]}' IDENTIFIED BY '${passwords[$i]}';"
     38 done;
     39 
     40 # bind
     41 #IP_ETH0=$(ip route | grep eth0 | grep src | awk '{print $9}')
     42 #HOSTNAME=LXCNAME works as well, but refers to the container that was built last (nslookup LXCNAME)
     43 sed -i "s/\(bind.*\) 127.0.0.1/\1 $MYSQL_BIND/g" /etc/mysql/mariadb.conf.d/50-server.cnf