2018-12-19
This commit is contained in:
parent
dcfce47c8d
commit
46e184fc97
Binary file not shown.
132
scripts/docker_install.sh
Normal file
132
scripts/docker_install.sh
Normal file
@ -0,0 +1,132 @@
|
||||
#!/bin/bash
|
||||
NVM="$HOME/.nvm"
|
||||
NVM_VERSION="stable"
|
||||
DEV="$HOME/dev"
|
||||
LIVE="$HOME/live"
|
||||
STAGING="$HOME/staging"
|
||||
SWAP="/swapfile"
|
||||
PKG_MANAGER=$( command -v yum || command -v apt-get ) || echo "Neither yum nor apt-get found"
|
||||
PKG_DEVICE=$(basename $PKG_MANAGER)
|
||||
pidof systemd && SYSTEMDCALL=1 || SYSTEMDCALL=0
|
||||
UPDATE=no
|
||||
DATABASE=no
|
||||
NGINX=no
|
||||
|
||||
RED=`tput setaf 1`
|
||||
GREEN=`tput setaf 2`
|
||||
YELLOW=`tput setaf 3`
|
||||
PURPLE=`tput setaf 5`
|
||||
RESET=`tput sgr0`
|
||||
|
||||
|
||||
fancy_echo() {
|
||||
local fmt="$1"; shift
|
||||
|
||||
# shellcheck disable=SC2059
|
||||
printf "\n$fmt\n" "$@"
|
||||
}
|
||||
|
||||
for i in "$@"
|
||||
do
|
||||
case $i in
|
||||
-u|--update)
|
||||
UPDATE=YES
|
||||
shift # past argument=value
|
||||
;;
|
||||
-d|--database)
|
||||
DATABASE=YES
|
||||
shift # past argument=value
|
||||
;;
|
||||
-n|--nginx)
|
||||
NGINX=YES
|
||||
shift # past argument=value
|
||||
;;
|
||||
-i|--install)
|
||||
UPDATE=YES
|
||||
# NGINX=YES
|
||||
# DATABASE=YES
|
||||
shift # past argument=value
|
||||
;;
|
||||
--default)
|
||||
DEFAULT=YES
|
||||
shift # past argument with no value
|
||||
;;
|
||||
*)
|
||||
# unknown option
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
|
||||
fancy_echo "${YELLOW}Installing PI ...${RESET}"
|
||||
## Update initial packages
|
||||
|
||||
read -s -p "Enter Password for sudo: " sudoPW
|
||||
|
||||
fancy_echo "${RED}Cleaning...${RESET}"
|
||||
|
||||
if [ ! -d "$DEV" ]; then
|
||||
mkdir -p $DEV
|
||||
fi
|
||||
|
||||
if [ ! -d "$LIVE" ]; then
|
||||
mkdir -p $LIVE
|
||||
fi
|
||||
|
||||
if [ ! -d "$STAGING" ]; then
|
||||
rm -rf $STAGING
|
||||
mkdir -p $STAGING
|
||||
else
|
||||
mkdir -p $STAGING
|
||||
fi
|
||||
|
||||
|
||||
if [[ $UPDATE = "YES" ]]; then
|
||||
fancy_echo "${PURPLE}Updating system packages${RESET}"
|
||||
|
||||
if [ $(basename $PKG_MANAGER) = "yum" ]; then
|
||||
echo $sudoPW | sudo -S yum --assumeyes upgrade
|
||||
echo $sudoPW | sudo -S yum --assumeyes install deltarpm psmisc
|
||||
echo $sudoPW | sudo -S yum --assumeyes install git make automake gcc gcc-c++ kernel-devel nginx htop screen wget curl pi-bluetooth
|
||||
else
|
||||
echo $sudoPW | sudo -S echo udev hold | dpkg --set-selections
|
||||
echo $sudoPW | sudo -S echo initscripts hold | dpkg --set-selections
|
||||
echo $sudoPW | sudo -S apt-get -y -q --force-yes update
|
||||
echo $sudoPW | sudo -S apt-get -y -q --force-yes upgrade
|
||||
echo $sudoPW | sudo -S DEBIAN_FRONTEND=noninteractive apt-get install -y -q -f build-essential dnsutils git xorg openbox libasound2 libnss3-dev libxss1 libatk-bridge2.0-0 libgtk2.0-common libgtk-3-0
|
||||
echo $sudoPW | sudo -S apt-get -y -q --force-yes clean
|
||||
fi
|
||||
fi
|
||||
|
||||
# set up and install swap file
|
||||
if [[ ! -f "$SWAP" ]]; then
|
||||
fancy_echo "${YELLOW}Setting up swapfile...${RESET}"
|
||||
|
||||
echo $sudoPW | sudo -S fallocate -l 1G $SWAP
|
||||
echo $sudoPW | sudo -S chmod 600 $SWAP
|
||||
echo $sudoPW | sudo -S mkswap $SWAP
|
||||
echo $sudoPW | sudo -S swapon $SWAP
|
||||
|
||||
add /swapfile/swapfile none swap defaults 0 0 to /etc/fstab
|
||||
fi
|
||||
|
||||
# setup node and npm
|
||||
if [ ! -d "$NVM" ]; then
|
||||
fancy_echo "${YELLOW}Installing Node...${RESET}"
|
||||
|
||||
# Will enter here if $DIRECTORY exists, even if it contains spaces
|
||||
|
||||
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
|
||||
export NVM_DIR=$NVM
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
|
||||
|
||||
source $HOME/.bashrc
|
||||
source $NVM/nvm.sh
|
||||
nvm install $NVM_VERSION
|
||||
fi
|
||||
|
||||
if [[ $UPDATE = "YES" ]]; then
|
||||
fancy_echo "${YELLOW}Installing Node Global Packages...${RESET}"
|
||||
npm install -g gulp bower pm2@latest npm-check npm-install-missing
|
||||
pm2 update
|
||||
fi
|
10
scripts/focker.sh
Executable file
10
scripts/focker.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
|
||||
echo udev hold | dpkg --set-selections
|
||||
echo initscripts hold | dpkg --set-selections
|
||||
apt-get -y update
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install -y -q -f build-essential dnsutils git xorg openbox libasound2 libnss3-dev libxss1 libatk-bridge2.0-0 libgtk2.0-common libgtk-3-0
|
||||
apt-get clean -q
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user