= vagrant mysql {{tag>Vagrantfile}} los ficheros necesarios se han servido desde un pequeño contenedor (por restricciones de licencia o firewall), docker run -d -p 9090:80 -v $PWD:/http tiagoad/nginx-index == con docker (problema sin resolver, la VM arranca bien el mysql la primera vez, pero no las posteriores) IP = '192.168.1.20' VERSION = '5.5' NAME = "mysql-#{VERSION}" Vagrant.configure("2") do |config| config.vm.box = "altrankas/mysql5" config.vm.hostname = NAME config.vm.define NAME config.vm.network "private_network", ip: "#{IP}" config.vm.network "forwarded_port", guest: 3306, host: 3306 config.vm.synced_folder ".", "/vagrant" config.vm.provider :virtualbox do |v| v.gui = true v.linked_clone = true v.name = NAME end config.vm.provision "shell", path: "../../common/setup-mysql.sh", args: "#{VERSION}" config.vm.provision "shell", path: "../../common/setup-vagrant.sh" config.vm.provision "docker" do |d| d.run "mysql_#{VERSION}", image: "mysql:#{VERSION}", args: "-p 3306:3306 -v /data/#{VERSION}:/var/lib/mysql --env MYSQL_ROOT_PASSWORD=admin" end end == 5.5 standalone el fichero **tar.gz** ya está descargado, pero está preparado para depender del nginx. Vagrant.configure("2") do |config| config.vm.box = "peru/ubuntu-18.04-desktop-amd64" config.vm.box_version = "20190401.01" config.vm.provision "file", source: "../../common/addroot.sql", destination: "/tmp/addroot.sql" config.vm.provision "file", source: "./mysql-5.5.62-linux-glibc2.12-x86_64.tar.gz", destination: "/tmp/mysql-5.5.62-linux-glibc2.12-x86_64.tar.gz" config.vm.network "private_network", ip: "192.168.1.5" config.vm.network "forwarded_port", guest: 3306, host: 3306 config.vm.provider :virtualbox do |v| v.name = "altrankas-mysql-5.5" v.linked_clone = true v.memory = 2048 v.cpus = 2 end config.vm.provision "shell", path: "install.sh" # config.vm.provision "shell", path: "../../common/addInsecureKey.sh" end #!/bin/bash # https://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.62-linux-glibc2.12-x86_64.tar.gz MYSQL_FOLDER="mysql-5.5.62-linux-glibc2.12-x86_64" MYSQL_TGZ="${MYSQL_FOLDER}.tar.gz" MYSQL_URL_DOWNLOAD="https://dev.mysql.com/get/Downloads/MySQL-5.5/${MYSQL_TGZ}" MYSQL_HOME="/usr/local/mysql" DEBIAN_FRONTEND=noninteractive sudo apt-get -y update sudo apt-get install -y wget libaio1 > /dev/null 2>&1 sudo debconf-set-selections <<< 'mysql-community-server mysql-community-server/root-pass password admin' sudo debconf-set-selections <<< 'mysql-community-server mysql-community-server/re-root-pass password admin' #sudo wget -O /tmp/${MYSQL_TGZ} ${MYSQL_URL_DOWNLOAD} sudo tar zxf /tmp/${MYSQL_TGZ} -C /tmp/ sudo mv /tmp/${MYSQL_FOLDER} ${MYSQL_HOME} sudo groupadd mysql sudo useradd -r -g mysql -s /bin/false mysql sudo chown -R mysql:mysql ${MYSQL_HOME} cd ${MYSQL_HOME} sudo ${MYSQL_HOME}/scripts/mysql_install_db --basedir=${MYSQL_HOME} --user=mysql sudo chown -R root ${MYSQL_HOME} sudo chown -R mysql ${MYSQL_HOME}/data sudo cp ${MYSQL_HOME}/support-files/my-medium.cnf /etc/my.cnf sudo cp ${MYSQL_HOME}/support-files/mysql.server /etc/init.d/mysql.server sudo mkdir /var/run/mysql sudo chown -R mysql /var/run/mysql cd ${MYSQL_HOME} sudo ${MYSQL_HOME}/bin/mysqld_safe --user=mysql --basedir=${MYSQL_HOME} & sleep 10 ${MYSQL_HOME}/bin/mysqladmin -u root password 'admin' sudo ${MYSQL_HOME}/bin/mysql -u root --password=admin mysql < /tmp/addroot.sql sudo update-rc.d mysql.server defaults #sudo systemctl restart mysql.service sudo locale-gen es_ES echo "setxkbmap -layout 'es,es' -model pc105" >> /home/vagrant/.bashrc sudo echo "PATH=\"${PATH}:${MYSQL_HOME}/bin\"" >> /etc/environment == 5.6 standalone el Vagrantfile se readapta, pequeños cambios (el **name** y el fichero **tar**): config.vm.provision "file", source: "./mysql-server_5.6.43-1ubuntu14.04_amd64.deb-bundle.tar", destination: "/tmp/mysql-server_5.6.43-1ubuntu14.04_amd64.deb-bundle.tar" #!/bin/bash # https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-server_5.6.43-1ubuntu14.04_amd64.deb-bundle.tar MYSQL_TGZ="mysql-server_5.6.43-1ubuntu14.04_amd64.deb-bundle.tar" MYSQL_URL_DOWNLOAD="https://dev.mysql.com/get/Downloads/MySQL-5.6/${MYSQL_TGZ}" DEBIAN_FRONTEND=noninteractive sudo apt-get -y update sudo apt-get install -y wget > /dev/null 2>&1 sudo debconf-set-selections <<< 'mysql-community-server mysql-community-server/root-pass password admin' sudo debconf-set-selections <<< 'mysql-community-server mysql-community-server/re-root-pass password admin' #sudo apt-get install -y mysql-server > /dev/null 2>&1 #sudo wget -O /tmp/${MYSQL_TGZ} ${MYSQL_URL_DOWNLOAD} sudo mkdir /tmp/mysql sudo tar xf /tmp/${MYSQL_TGZ} -C /tmp/mysql sudo dpkg -i /tmp/mysql/*.deb sudo apt-get install -fy sudo rm -rf /tmp/mysql sudo rm -f /tmp/${MYSQL_TGZ} #sudo sed -i.bak "s|127.0.0.1|0.0.0.0|g" /etc/mysql/mysql.conf.d/mysqld.cnf sudo mysql -u root --password=admin mysql < /tmp/addroot.sql sudo systemctl restart mysql.service sudo locale-gen es_ES echo "setxkbmap -layout 'es,es' -model pc105" >> /home/vagrant/.bashrc == 5.7 standalone versión Vagrantfile más reducida Vagrant.configure("2") do |config| config.vm.box = "peru/ubuntu-18.04-desktop-amd64" config.vm.box_version = "20190401.01" config.vm.provision "file", source: "../../common/addroot.sql", destination: "/tmp/addroot.sql" config.vm.provider :virtualbox do |v| v.name = "altrankas-mysql-5.7" v.linked_clone = true v.memory = 2048 v.cpus = 2 end config.vm.provision "shell", path: "install.sh" config.vm.provision "shell", path: "../../common/addInsecureKey.sh" end #!/bin/bash DEBIAN_FRONTEND=noninteractive sudo apt-get -y update sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password password admin' sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password_again password admin' sudo apt-get install -y mysql-server > /dev/null 2>&1 sudo sed -i.bak "s|127.0.0.1|0.0.0.0|g" /etc/mysql/mysql.conf.d/mysqld.cnf sudo mysql -u root --password=admin mysql < /tmp/addroot.sql sudo systemctl restart mysql.service sudo locale-gen es_ES echo "setxkbmap -layout 'es,es' -model pc105" >> /home/vagrant/.bashrc == ficheros comunes CREATE USER 'root'@'%' IDENTIFIED BY 'admin'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; #!/bin/bash su - vagrant echo "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzIw+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoPkcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NOTd0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcWyLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ== vagrant insecure public key " >> .ssh/authorized_keys