In this tutorial, you'll learn how to install FastAPI with MongoDB on Ubuntu 24.04 LTS .
FastAPI is a web framework based on Python for creating API services. It's a modern, fast, high-performance framework supporting asynchronous operations.
__________________________________________________________________________________________________________________
Testing Environment: Ubuntu 24.04.1 LTS Hostname - ip Address -
__________________________________________________________________________________________________________________
apt update ; apt install build-essential net-tools curl git software-properties-common gnupg python3 python3-pip python3-venv -y
curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \
sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \
--dearmor
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
sudo apt update && sudo apt install mongodb-org -y
sudo systemctl enable --now mongod ; sudo systemctl status mongod
mongosh
su - username
mkdir -p ~/app; cd ~/app
python3 -m venv .venv
source .venv/bin/activate
deactivate
pip3 install fastapi uvicorn
mkdir -p server/{models,routes}
touch main.py server/{app.py,database.py} server/models/itemModels.py server/routes/item.py
nano app.py | nano server/app.py
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def root():
return {"message": "Hello FastAPI!"}
nano main.py
import uvicorn
if __name__ == "__main__":
uvicorn.run("server.app:app", host="0.0.0.0", port=8080, reload=True)
python3 main.py
__________________________________________________________________________________________________________________
QuickNotepadTutorial
Friday, July 11, 2025
How To Install Fast API with MongoDB on Ubuntu 24.04 LTS
Thursday, July 10, 2025
How To Install latest OpenSSL version from Source On Oracle Linux Server 9.1
OpenSSL is a widely used crypto library that implements SSL and TLS protocols for secure communication over computer networks. Many programs like Apache Web server, PHP, Postfix, and many others use OpenSSL. OpenSSL provides support for various cryptographic algorithms such as ciphers (AES, Blowfish, DES, IDEA etc.), cryptographic hash functions (MD5, MD4, SHA-1, SHA-2, etc.), and public key cryptography (RSA, DSA, Diffie-Hellman key exchange).
__________________________________________________________________________________________________________________________________
Server - Os: Oracle Linux Server 9.1 64Bit | IP -192.168.1.50 |Hostname - server.testbox.com
__________________________________________________________________________________________________________________________________
cat /etc/system-release ; hostname ; hostname -I ; dnf groupinstall "Development Tools" -y
yum install perl-core zlib-devel -y
openssl version -a
Openssl Latest - https://www.openssl.org/source/-
cd /usr/local/src/ ; wget https://www.openssl.org/source/openssl-3.0.7.tar.gz
tar -xf openssl-3.0.7.tar.gz ; cd openssl-3.0.7
cd /usr/local/src/openssl-3.0.7
./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib
make ; make test ; make install
cd /etc/ld.so.conf.d/ ; nano openssl-3.0.7.conf
/usr/local/ssl/lib64
sudo ldconfig -v
mv /bin/openssl /bin/openssl.bak
nano /etc/profile.d/openssl.sh
#Set OPENSSL_PATH
OPENSSL_PATH="/usr/local/ssl/bin"
export OPENSSL_PATH
PATH=$PATH:$OPENSSL_PATH
export PATH
chmod +x /etc/profile.d/openssl.sh ; source /etc/profile.d/openssl.sh
echo $PATH ; which openssl ; openssl version -a
______________________________________________________________________________________
How To Install GoAccess Web Log Analyzer on Oracle Linux Server 9
GoAccess is a free, open-source, lightweight log analyzer written in C language. It can read and analyze log files of Apache, Nginx, CloudFront, Caddy, and more. It uses the ncurses library for its CLI interface. It is an interactive and real-time web server log analyzer that helps you to analyze and view web server logs quickly.
Homepage - https://goaccess.io/
__________________________________________________________________________________________________________________________________
Server - Os: Oracle Linux Server 9 64Bit | IP -192.168.1.50 |Hostname - server.testbox.com
__________________________________________________________________________________________________________________________________
cat /etc/system-release ; dnf groupinstall "Development Tools" -y
dnf update -y
dnf install httpd ncurses-devel openssl-devel -y
systemctl start httpd ; systemctl enable httpd
wget https://tar.goaccess.io/goaccess-1.5.4.tar.gz
tar -xvzf goaccess-1.5.4.tar.gz
cd goaccess-1.5.4
autoreconf -fi
./configure --enable-utf8 --with-openssl
make ; make install
goaccess --version
nano /usr/local/etc/goaccess/goaccess.conf
time-format %H:%M:%S
date-format %d/%b/%Y
#ignore-panel REFERRERS
log-format COMBINED
goaccess /var/log/httpd/access_log
goaccess /var/log/httpd/access_log -o /var/www/html/stats.html
http://192.168.1.50/stats.html
__________________________________________________________________________________________________________________________________
How To Install Suricata IDS on Oracle Linux Server 9
Suricata is an open-source detection engine that can act as an intrusion detection system (IDS) and an intrusion prevention system (IPS).
__________________________________________________________________________________________________________________________________
Server - Os: Oracle Linux Server 9 64Bit | IP -192.168.1.50 |Hostname - server.testbox.com
__________________________________________________________________________________________________________________________________
cat /etc/system-release ; dnf groupinstall "Development Tools" -y
dnf install epel-release -y
dnf info suricata
dnf install suricata -y
ip --brief add
nano /etc/suricata/suricata.yaml
HOME_NET: "[192.168.1.50]"
EXTERNAL_NET: "!$HOME_NET"
af-packet:
- interface: ens33
default-rule-path: /var/lib/suricata/rules
rule-files:
- suricata.rules
ethtool -K ens33 gro off lro off
nano /etc/sysconfig/suricata
OPTIONS="-i ens33 --user suricata "
systemctl enable --now suricata
systemctl status suricata
tail /var/log/suricata/suricata.log
__________________________________________________________________________________________________________________________________
How to install Redis server on Oracle Linux Server 9
Redis is an open-source (BSD licensed), in-memory data structure store. It can be used as a database, cache and message broker. It supports different kinds of abstract data structures such as Strings, Hashes, Lists, Sets, sorted sets, hyperlogs, bitmaps, streams, and spatial indexes.
__________________________________________________________________________________________________________________________________
Server - Os: Oracle Linux Server 9 64Bit | IP -192.168.1.50 |Hostname - server.testbox.com
__________________________________________________________________________________________________________________________________
cat /etc/system-release ; dnf groupinstall "Development Tools" -y
dnf install redis -y
systemctl start redis ; systemctl enable redis
redis-server -v
redis-cli
ping
Allow remote connections:-
nano /etc/redis/redis.conf
# bind 127.0.0.1 ::1
protected-mode no
systemctl restart redis
firewall-cmd --zone=public --permanent --add-service=redis ; firewall-cmd --reload
redis-cli -h REDISHOSTNAME_OR_IPADDRESS
redis-cli -h 192.168.1.50
INFO
__________________________________________________________________________________________________________________________________
Monday, June 23, 2025
How to Install Composer with PHP
Composer is the standard tool for managing PHP dependencies. It automates library installation, enforces version constraints, and helps organize autoloading, making it an essential part of modern PHP development. Whether you're building with frameworks like Laravel, Symfony, or Slim, Composer ensures consistency across environments and simplifies dependency resolution.
_____________________________________________________________________________________________________________
Testing Environment: Ubuntu 24.04.1 LTS Hostname - ip Address -
_____________________________________________________________________________________________________________
apt update ; apt install build-essential net-tools curl git software-properties-common
sudo apt install php-cli php-zip php-curl -y
cd ~
curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.php
HASH=`curl -sS https://composer.github.io/installer.sig`
echo $HASH
php -r "if (hash_file('SHA384', '/tmp/composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
sudo php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer
composer
__________________________________________________________________________________________________________________
Thursday, April 3, 2025
How To Install Jitsi On Ubuntu 24.04 LTS
Jitsi is an open-source project that allows you to build and deploy secure video conferencing solutions. This tutorial will teach us how to install Jitsi on Ubuntu 24.04 LTS.
_____________________________________________________________________________________________________________
Testing Environment: Ubuntu 24.04.1 LTS Hostname - ip Address -
_____________________________________________________________________________________________________________
apt update ; apt install build-essential net-tools curl git software-properties-common
sudo apt update -y && sudo apt ugprade -y
sudo hostnamectl set-hostname jitsi.tutorial.com
curl https://download.jitsi.org/jitsi-key.gpg.key | sudo sh -c 'gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg' && \
echo 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list > /dev/null && \
sudo apt update
sudo apt remove --purge apache2
sudo apt install nginx-full
sudo systemctl status nginx ; sudo systemctl start nginx ; sudo systemctl enable nginx
sudo apt install jitsi-meet -y
admin@jitsi.tutorial.com
__________________________________________________________________________________________________________________