Skip to content

Instantly share code, notes, and snippets.

@genievn
Forked from franciscotfmc/vagrant-provision.sh
Created August 4, 2016 04:10
Show Gist options
  • Save genievn/6b757e668d7e961d8ec83c671b0e8161 to your computer and use it in GitHub Desktop.
Save genievn/6b757e668d7e961d8ec83c671b0e8161 to your computer and use it in GitHub Desktop.
Install Git, NodeJS, MySQL, Redis, MongoDB - Centos 7.2
#!/bin/bash
sudo yum update
sudo yum install -y wget
echo "Installing git"
sudo yum install -y git
echo "Installing vim"
sudo yum install -y vim
echo "Installing mysql"
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
sudo yum update
sudo yum install -y mysql-server
sudo yum clean all
sudo yum -y upgrade
sudo yum install -y mysql-community-server
echo "Changing mysql root password"
sudo systemctl stop mysqld
sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
sudo systemctl start mysqld
sudo mysql --execute="UPDATE mysql.user SET authentication_string = PASSWORD('12345678') WHERE User = 'root' AND Host = 'localhost';"
sudo mysql --execute="FLUSH PRIVILEGES;"
sudo systemctl stop mysqld
sudo systemctl unset-environment MYSQLD_OPTS
sudo systemctl start mysqld
sudo mysql -u root --execute="SET GLOBAL validate_password_policy=LOW;"
sudo mysql -u root --execute="SET PASSWORD FOR 'root'@'localhost' = PASSWORD('12345678');"
sudo mysql -u root -p12345678 --execute="GRANT ALL PRIVILEGES ON *.* to 'root'@'localhost' IDENTIFIED by '12345678';"
sudo mysql -u root -p12345678 --execute="CREATE USER 'root'@'10.0.2.2' identified by '12345678';"
sudo mysql -u root -p12345678 --execute="SET PASSWORD FOR 'root'@'10.0.2.2' = PASSWORD('12345678');"
sudo mysql -u root -p12345678 --execute="GRANT ALL PRIVILEGES ON *.* to 'root'@'10.0.2.2' IDENTIFIED by '12345678';"
sudo mysql -u root -p12345678 --execute="CREATE USER 'root'@'127.0.0.1' identified by '12345678';"
sudo mysql -u root -p12345678 --execute="SET PASSWORD FOR 'root'@'127.0.0.1' = PASSWORD('12345678');"
sudo mysql -u root -p12345678 --execute="GRANT ALL PRIVILEGES ON *.* to 'root'@'127.0.0.1' IDENTIFIED by '12345678';"
sudo mysql -u root -p12345678 --execute="FLUSH PRIVILEGES;"
echo "Installing Redis"
wget -r --no-parent -A 'epel-release-*.rpm' http://dl.fedoraproject.org/pub/epel/7/x86_64/e/
sudo rpm -Uvh dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-*.rpm
sudo yum install -y redis
sudo sed -i "s/bind\ 127.0.0.1/bind\ 0.0.0.0/g" /etc/redis.conf
sudo systemctl start redis.service
sudo systemctl restart redis.service
echo "Installing nvm...";
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.2/install.sh | bash
source ~/.bashrc
echo "Installing NodeJS...";
nvm install 4.4.7
echo "Global npm dependencies"
npm install -g pm2 lodash gulp sequelize-cli
echo "Installing mongodb"
sudo touch /etc/yum.repos.d/mongodb-org-3.2.repo
echo -e "[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc" | sudo tee /etc/yum.repos.d/mongodb-org-3.2.repo
sudo yum install -y mongodb-org
sudo sed -i "s/bindIp:\ 127.0.0.1/bindIp:\ 0.0.0.0/g" /etc/mongod.conf
sudo systemctl start mongod.service
sudo systemctl restart mongod.service
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment