Xubuntu 20.04 for lightweight purpose
- Update & install required packages
sudo apt update && sudo apt -y upgrade
sudo apt -y install software-properties-common
sudo apt -y install curl git unzip perl libnet-ssleay-perl openssl openssh-server libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python
- Web server
sudo apt -y install apache2 apachetop
Or use Nginx ( Suggested )
sudo apt -y remove apache2
sudo apt -y install nginx
sudo apt -y install php8.0-fpm
- MySQL
sudo apt install -y mysql-client mysql-sandbox mysql-server mysql-testsuite
sudo /etc/init.d/mysql restart
- MariaDB ( Suggested )
sudo apt -y install mariadb-server
sudo /etc/init.d/mysql restart
Setup your root password.
sudo mysql_secure_installation
And login with sudo
sudo mysql -uroot -p
We’ll need switch to mysql_native_password
by use
USE mysql;
UPDATE user SET plugin='mysql_native_password' WHERE User='root';
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
FLUSH PRIVILEGES
- PHP
For x86
sudo add-apt-repository ppa:ondrej/php && sudo apt update
For ARMv7l
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
Than now you can install your needed packages
sudo apt -y install php-imagick php-gd php-cli php-mbstringphp-pecl-http php-uploadprogress imagemagick \
php8.0-apcu php8.0-cli php8.0-curl php8.0-dev php8.0-gd php8.0-http php8.0-igbinary php8.0-imagick php8.0-intl php8.0-mbstring php8.0-mcrypt php8.0-memcache php8.0-memcached php8.0-mongodb php8.0-mysql php8.0-oauth php8.0-opcache php8.0-pcov php8.0-raphf php8.0-soap php8.0-sqlite3php8.0-xml php8.0-xmlrpc php8.0-xsl php8.0-yaml php8.0-zip
These are optional
sudo apt -y install php-xdebug php8.0-xdebug
sudo apt -y install php-memcache php-memcached memcached
sudo pecl install raphf
sudo pecl install propro
sudo pear install http
sudo pear install http2
sudo pecl install mongodb
- Composer
curl -sS https://getcomposer.org/installer -o composer-setup.php
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
- Node JS
For x86 only
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update && sudo apt install yarn
- Caching server
sudo apt -y install redis redis-server redis-tools memcached
- Supervisor
sudo apt -y install supervisor
- Docker
For x86 only
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo usermod -aG docker $USER
For ARMv7l
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
- General SSH
ssh-keygen -t ed25519 -C "jooservices@gmail.com"
https://docs.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
Leave a Reply