CREATE USER 'admin'@'localhost' IDENTIFIED BY 'the_secure_password';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
-
RE: mysql - snippets
-
NodeJS - ERR_OSSL_EVP_UNSUPPORTED error
export NODE_OPTIONS=--openssl-legacy-provider
Ref: https://stackoverflow.com/questions/69394632/webpack-build-failing-with-err-ossl-evp-unsupported
-
RE: nginx conf - sample
redirect
server { server_name .mydomain.example; rewrite ^ http://www.adifferentdomain.example$request_uri? permanent; }
or on any version 0.9.1 or higher:
server { server_name .mydomain.example; return 301 http://www.adifferentdomain.example$request_uri; }
HTTP redirect:
- 301 (permanent)
- 302 (temporary)
-
Linode - disable ipv6
Check IP
ip a
File: /etc/sysctl.conf
net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1
Reload sysctl
sysctl -p /etc/sysctl.conf
-
Softether - Linux
Install server
Download here: https://www.softether-download.com/en.aspx?product=softether
apt-get update apt-get upgrade apt-get install build-essential wget "https://www.softether-download.com/files/softether/v4.43-9799-beta-2023.08.31-tree/Linux/SoftEther_VPN_Server/64bit_-_Intel_x64_or_AMD64/softether-vpnserver-v4.43-9799-beta-2023.08.31-linux-x64-64bit.tar.gz" tar -zxvf softether-vpnserver-v4.43-9799-beta-2023.08.31-linux-x64-64bit.tar.gz cd vncserver make main
-
S3 - Bucket Policy - ACL - for public
{ "Version": "2008-10-17", "Statement": [ { "Sid": "AllowPublicRead", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::BUCKET_NAME/*" } ] }
-
docker build for ECR
1. build
docker build -t nextjs-app .
aws ecr get-login-password --region ap-southeast-1
Then it will come out the password
2. login
docker login -u AWS -p somePassword 123456789012.dkr.ecr.us-east-1.amazonaws.com
3. tag
docker tag nextjs-app:latest 123456789012.dkr.ecr.us-east-1.amazonaws.com/nextjs-app:latest
4. push
docker push 123456789012.dkr.ecr.us-east-1.amazonaws.com/nextjs-app:latest
Below example for docker login stdin with aws get password
aws ecr get-login-password --region ap-southeast-1 | docker login -u AWS --password-stdin 123456789012.dkr.ecr.us-east-1.amazonaws.com
-
EC2 - increase storage without turn off instance
To increase the space on your AWS instance, follow these steps:
1. Check the Available Storage:
Before expanding, verify the disk space:df -h
2. Identify the Volume:
Find the attached volumes for your EC2 instance:Go to the EC2 Console.
Under Elastic Block Store (EBS), select Volumes.
Identify the volume attached to your instance.3. Modify the EBS Volume:
Select the volume you want to expand.
Click on Actions → Modify Volume.
Increase the size of the volume (e.g., from 8 GB to 20 GB).
Click Modify.4. Extend the Partition on the EC2 Instance:
After the volume is resized, you'll need to extend the file system to use the new space.For ext4 file system:
Verify the volume size:lsblk
Make sure the resized volume reflects the correct size.
Extend the file system:sudo growpart /dev/nvme0n1 1 sudo resize2fs /dev/nvme0n1p1
For xfs file system:
Extend the file system:sudo xfs_growfs -d /
5. Verify the Increased Space:
Check the disk space again:df -h
This process will allow you to increase the disk space without stopping the instance.
To check partition type
lsblk -f
-
Multiple PHP 8.3 and 7.4 - Ubuntu 24
To run multiple PHP versions (8.3 and 7.4) on Ubuntu 24, you can install PHP 7.4 alongside PHP 8.3 and configure PHP-FPM to handle both versions. Here’s a step-by-step guide:
Step 1: Add PHP 7.4 Repository
First, you need to add the ondrej/php PPA, which allows you to install older PHP versions like 7.4.sudo apt update sudo apt install software-properties-common sudo add-apt-repository ppa:ondrej/php sudo apt update
Step 2: Install PHP 7.4 and PHP 7.4-FPM
Now, install PHP 7.4 along with its FPM package and any required extensions.sudo apt install php7.4 php7.4-fpm php7.4-cli php7.4-common php7.4-mysql php7.4-xml php7.4-mbstring php7.4-curl
Step 3: Ensure PHP 8.3 FPM is Installed
Make sure you also have PHP 8.3 FPM installed (if not already):sudo apt install php8.3-fpm
Step 4: Configure Nginx to Use Different PHP-FPM Versions
Now, you need to modify your Nginx configuration to point to the correct PHP-FPM socket for each site or location.For PHP 8.3 (default):
In your Nginx config file (e.g., /etc/nginx/sites-available/default), set the fastcgi_pass directive to PHP 8.3:nginx
Copy code
location ~ .php$ {
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
include fastcgi_params;
}For PHP 7.4 (for specific locations or sites):
For specific sites or locations where you want to use PHP 7.4, you can point to the PHP 7.4 FPM socket:location ~ \.php$ { fastcgi_pass unix:/run/php/php7.4-fpm.sock; include fastcgi_params; }
Step 5: Enable and Restart PHP-FPM Services
Enable both PHP-FPM services to ensure they start on boot:sudo systemctl enable php8.3-fpm sudo systemctl enable php7.4-fpm
Then restart both services:
sudo systemctl restart php8.3-fpm sudo systemctl restart php7.4-fpm
Step 6: Set PHP 8.3 as the Default CLI Version (Optional)
If you want to keep PHP 8.3 as the default for the CLI, use the update-alternatives command:sudo update-alternatives --set php /usr/bin/php8.3
To switch to PHP 7.4 for the CLI:
sudo update-alternatives --set php /usr/bin/php7.4
Step 7: Verify Installation
To check the installed versions of PHP-FPM, run:php -v # To check the default CLI version sudo systemctl status php7.4-fpm sudo systemctl status php8.3-fpm
Conclusion
Now you have both PHP 8.3 and PHP 7.4 running on your Ubuntu 24 system, with PHP 8.3 as the default and the ability to use PHP 7.4 for specific locations or virtual hosts.