install nvm sous apxtri
This commit is contained in:
@@ -14,11 +14,11 @@ echo "Welcome to the setup of apXtri ! Thank you for choosing us!"
|
|||||||
sleep 1
|
sleep 1
|
||||||
echo "Starting up the installation..."
|
echo "Starting up the installation..."
|
||||||
|
|
||||||
# Update and install useful tools
|
# Update and useful tools
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt install -y curl git build-essential
|
sudo apt install -y curl git build-essential
|
||||||
|
|
||||||
# Create necessary directories and apply proper permissions
|
# Create necessaries reposetories and apply good permissions
|
||||||
sudo mkdir -p "$APP_DIR"
|
sudo mkdir -p "$APP_DIR"
|
||||||
sudo mkdir -p "$DATAPATH"
|
sudo mkdir -p "$DATAPATH"
|
||||||
sudo mkdir -p "$LOGPATH"
|
sudo mkdir -p "$LOGPATH"
|
||||||
@@ -26,7 +26,7 @@ sudo chown -R "$APXTRI_USER":"$APXTRI_USER" "$NODEPATH"
|
|||||||
sudo chown -R "$APXTRI_USER":"$APXTRI_USER" "$DATAPATH"
|
sudo chown -R "$APXTRI_USER":"$APXTRI_USER" "$DATAPATH"
|
||||||
sudo chown -R "$APXTRI_USER":"$APXTRI_USER" "$LOGPATH"
|
sudo chown -R "$APXTRI_USER":"$APXTRI_USER" "$LOGPATH"
|
||||||
|
|
||||||
# Check if Caddy is already running
|
# Check if Caddy exist
|
||||||
echo "Checking if Caddy is already running..."
|
echo "Checking if Caddy is already running..."
|
||||||
if pgrep -x caddy > /dev/null; then
|
if pgrep -x caddy > /dev/null; then
|
||||||
echo "Caddy appears to be running."
|
echo "Caddy appears to be running."
|
||||||
@@ -45,7 +45,7 @@ if pgrep -x caddy > /dev/null; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Check if default ports are already in use
|
# Check default ports in
|
||||||
echo "Check if default ports are already in use..."
|
echo "Check if default ports are already in use..."
|
||||||
PORTS=(3021 3031)
|
PORTS=(3021 3031)
|
||||||
for PORT in "${PORTS[@]}"; do
|
for PORT in "${PORTS[@]}"; do
|
||||||
@@ -59,9 +59,12 @@ for PORT in "${PORTS[@]}"; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Install Caddy
|
|
||||||
echo "Installing Caddy web server..."
|
echo "Installing Caddy web server..."
|
||||||
|
|
||||||
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl jq
|
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl jq
|
||||||
|
#curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo tee /etc/apt/trusted.gpg.d/caddy.gpg > /dev/null
|
||||||
|
#curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy.list
|
||||||
curl -fsSL https://dl.cloudsmith.io/public/caddy/stable/gpg.key | gpg --dearmor | sudo tee /etc/apt/keyrings/caddy-stable.gpg > /dev/null
|
curl -fsSL https://dl.cloudsmith.io/public/caddy/stable/gpg.key | gpg --dearmor | sudo tee /etc/apt/keyrings/caddy-stable.gpg > /dev/null
|
||||||
echo "deb [signed-by=/etc/apt/keyrings/caddy-stable.gpg] https://dl.cloudsmith.io/public/caddy/stable/deb/debian any-version main" | sudo tee /etc/apt/sources.list.d/caddy-stable.list
|
echo "deb [signed-by=/etc/apt/keyrings/caddy-stable.gpg] https://dl.cloudsmith.io/public/caddy/stable/deb/debian any-version main" | sudo tee /etc/apt/sources.list.d/caddy-stable.list
|
||||||
sudo apt update
|
sudo apt update
|
||||||
@@ -74,7 +77,7 @@ else
|
|||||||
echo "admin.apxtri already present in /etc/hosts"
|
echo "admin.apxtri already present in /etc/hosts"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Create user apxtri if not existing
|
# Create user apxtri if not existing
|
||||||
if id "$APXTRI_USER" &>/dev/null; then
|
if id "$APXTRI_USER" &>/dev/null; then
|
||||||
echo "User $APXTRI_USER already exists."
|
echo "User $APXTRI_USER already exists."
|
||||||
else
|
else
|
||||||
@@ -82,9 +85,11 @@ else
|
|||||||
sudo useradd -m -s /bin/bash "$APXTRI_USER"
|
sudo useradd -m -s /bin/bash "$APXTRI_USER"
|
||||||
echo "Set password for $APXTRI_USER:"
|
echo "Set password for $APXTRI_USER:"
|
||||||
sudo passwd "$APXTRI_USER"
|
sudo passwd "$APXTRI_USER"
|
||||||
|
#sudo usermod -aG sudo "$APXTRI_USER"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Clone repos
|
sudo su "$APXTRI_USER" #changer mdp
|
||||||
|
|
||||||
echo "Cloning objects into $DATAPATH/data/objects..."
|
echo "Cloning objects into $DATAPATH/data/objects..."
|
||||||
mkdir -p "$DATAPATH/data"
|
mkdir -p "$DATAPATH/data"
|
||||||
cd $DATAPATH/data
|
cd $DATAPATH/data
|
||||||
@@ -94,50 +99,46 @@ echo "Creating useful repos..."
|
|||||||
mkdir -p "$DATAPATH/data/apxtri/logs"
|
mkdir -p "$DATAPATH/data/apxtri/logs"
|
||||||
mkdir -p "$DATAPATH/data/apxtri/backups"
|
mkdir -p "$DATAPATH/data/apxtri/backups"
|
||||||
mkdir -p "$DATAPATH/data/apxtri/tmp"
|
mkdir -p "$DATAPATH/data/apxtri/tmp"
|
||||||
|
|
||||||
# Switch user to apxtri and install packages
|
|
||||||
echo "Switch user to $APXTRI_USER for install packages..."
|
echo "Switch user to $APXTRI_USER for install packages..."
|
||||||
echo "Cloning apXtri into $APP_DIR..."
|
echo "Cloning apXtri into $APP_DIR..."
|
||||||
cd $APP_DIR
|
cd $APP_DIR
|
||||||
git clone $REPO_APXTRI
|
git clone $REPO_APXTRI
|
||||||
cd apxtri
|
cd apxtri
|
||||||
|
|
||||||
# Installer NVM dans le répertoire de l'utilisateur apxtri (pas root)
|
# Installer NVM
|
||||||
|
export NVM_VERSION="v0.39.7"
|
||||||
echo "Installing NVM version $NVM_VERSION..."
|
echo "Installing NVM version $NVM_VERSION..."
|
||||||
sudo -u "$APXTRI_USER" bash -c "
|
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/$NVM_VERSION/install.sh | bash
|
||||||
export NVM_VERSION=\"v0.39.7\" &&
|
|
||||||
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/$NVM_VERSION/install.sh | bash
|
|
||||||
"
|
|
||||||
|
|
||||||
# Charger NVM dans le shell de l'utilisateur apxtri
|
# Charger NVM dans le shell courant
|
||||||
echo "NVM loading for user $APXTRI_USER..."
|
export NVM_DIR="$HOME/.nvm"
|
||||||
sudo -u "$APXTRI_USER" bash -c "
|
# Source le script nvm.sh si disponible
|
||||||
export NVM_DIR=\"\$HOME/.nvm\" &&
|
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
||||||
[ -s \"\$NVM_DIR/nvm.sh\" ] && . \"\$NVM_DIR/nvm.sh\"
|
|
||||||
"
|
echo "NVM loaded from $NVM_DIR"
|
||||||
|
|
||||||
echo "Installing Node.js LTS version..."
|
echo "Installing Node.js LTS version..."
|
||||||
sudo -u "$APXTRI_USER" bash -c "
|
nvm install --lts
|
||||||
nvm install --lts &&
|
nvm use --lts
|
||||||
nvm use --lts &&
|
nvm alias default 'lts/*'
|
||||||
nvm alias default 'lts/*'
|
|
||||||
"
|
|
||||||
|
|
||||||
# Vérification
|
# Vérification
|
||||||
sudo -u "$APXTRI_USER" bash -c "node -v && npm -v"
|
node -v
|
||||||
|
npm -v
|
||||||
|
|
||||||
echo "Installing Yarn..."
|
echo "Installing Yarn..."
|
||||||
sudo -u "$APXTRI_USER" bash -c "
|
npm install -g corepack
|
||||||
npm install -g corepack &&
|
corepack enable
|
||||||
corepack enable &&
|
corepack prepare yarn@stable --activate
|
||||||
corepack prepare yarn@stable --activate &&
|
yarn --version
|
||||||
yarn --version
|
|
||||||
"
|
|
||||||
|
|
||||||
echo "Installing dependencies with Yarn..."
|
echo "Installing dependencies with Yarn..."
|
||||||
sudo -u "$APXTRI_USER" bash -c "yarn install"
|
yarn install
|
||||||
|
|
||||||
|
|
||||||
|
echo "Installing dependencies with Yarn..."
|
||||||
|
yarn install
|
||||||
|
|
||||||
# Génération du fichier .env
|
|
||||||
echo "Generating .env file..."
|
echo "Generating .env file..."
|
||||||
cat << EOL > ".env"
|
cat << EOL > ".env"
|
||||||
TOWN=$TOWN
|
TOWN=$TOWN
|
||||||
@@ -156,8 +157,7 @@ CADDYAPIURL=http://localhost:2019/
|
|||||||
# Personalised install
|
# Personalised install
|
||||||
EOL
|
EOL
|
||||||
|
|
||||||
# Exécution de la commande yarn dev en tant qu'utilisateur apxtri
|
|
||||||
echo "Launching apXtri as $APXTRI_USER..."
|
echo "Launching apXtri as $APXTRI_USER..."
|
||||||
sudo -u "$APXTRI_USER" bash -c "source $HOME/.nvm/nvm.sh && yarn dev"
|
yarn dev
|
||||||
|
|
||||||
echo "Installation complete!"
|
echo "Installation complete!"
|
||||||
|
Reference in New Issue
Block a user