Sunday, January 7, 2024

web scraping reference

 https://juangsalazprabowo.medium.com/how-to-scraping-a-website-using-php-curl-in-laravel-framework-446ea0e97219

Monday, December 25, 2023

docker site goes down, due to ssl renewal error

sudo certbot -i nginx -d mqbakery.com -d *.mqbakery.com -a manual

sudo nginx -t

sudo systemctl reload nginx


 or

 

docker stop docker-webserver-1
docker start docker-webserver-1

NB- When you add acme challenge in godaddy, don't forget to remove the domain name from txt name. eg:_acmechallenge.mqbakery.com may be written as only acme_challenge


Saturday, December 23, 2023

Steps to Install Python

 sudo apt update
sudo apt install python3

Verify Installation:

python3 --version

python3
 

sudo apt install python3-pip

pip3 --version

Interpreter - 

Python3 filename.py



 

Google Analytics

https://support.google.com/analytics/answer/9304153?hl=en


https://analytics.google.com/analytics/web/#/p213025502/reports/intelligenthome


https://www.youtube.com/watch?v=QmEOPuJr05w&list=PLI5YfMzCfRtZ4bHJJDl_IJejxMwZFiBwz&index=4




Setting up a Google Analytics account involves a few steps. Follow these step-by-step instructions:

  1. Create a Google Account: If you don't have a Google Account, you'll need to create one. Visit the Google Account creation page and follow the instructions.

  2. Sign in to Google Analytics: Once you have a Google Account, go to the https://analytics.google.com/analytics/web/#/ and sign in with your Google Account credentials.

  3. Set Up a New Google Analytics Account:

    • Click on the "Start for free" button.
    • Fill in your Account Name, which is typically the name of your business or website.
    • Choose what you want to measure (select "Web" for a website).
  4. Set Up a Property:

    • Enter the Website Name and Website URL.
    • Choose the industry category that best describes your business.
    • Select the reporting time zone.
  5. Configure Data Sharing Settings:

    • Decide whether you want to share data with Google and its partners. Adjust the settings according to your preference.
  6. Create a Google Analytics 4 Property:

    • You will be prompted to create a Universal Analytics property or a Google Analytics 4 property. It's recommended to create a Google Analytics 4 property, as it is the latest version of Google Analytics.
  7. Agree to Terms and Create:

    • Read and accept the terms of service.
    • Click on the "Create" button to create your Google Analytics account and property.
  8. Install the Tracking Code:

    • After creating your property, you will be given a tracking code (a unique snippet of code). Copy this code.
    • Paste the tracking code into the HTML of every page on your website, just before the closing </head> tag.
  9. Verify Tracking Installation:

    • After installing the tracking code, go back to your Google Analytics account.
    • Click on "Home" in the left-hand menu.
    • Look for the Realtime section, and if your tracking is set up correctly, you should see data in the Realtime report.

  1. Explore Google Analytics:

  • Once your account is set up and the tracking code is installed, explore the various reports and features available in Google Analytics. You can find information on user behavior, website traffic, and more.

Remember that it may take some time for data to appear in your reports, so be patient. Regularly check your Google Analytics account to gain insights into your website's performance and user behavior.

Below is the Google tag for this account. Copy and paste it in the code of every page of your website, immediately after the <head> element. Don’t add more than one Google tag to each page.

Wednesday, December 13, 2023

free courses available for Artificial Intelligence (AI)

 There are several excellent free courses available for Artificial Intelligence (AI) studies. Here are some of the best free courses for AI:

1. Stanford University's CS229: Machine Learning: This course is available for free online and covers various machine learning algorithms and techniques. It is widely regarded as one of the best resources for learning machine learning.

2. Stanford University's CS231n: Convolutional Neural Networks for Visual Recognition: This course focuses on deep learning techniques applied to computer vision. It covers topics such as CNNs, image classification, object detection, and more.

3. University of Helsinki's Elements of AI: This online course provides a beginner-friendly introduction to AI. It covers various AI concepts and applications, offering a comprehensive overview of the field.

4. Google's Machine Learning Crash Course: This free online course offers an introduction to machine learning concepts. It covers topics such as linear regression, classification, neural networks, and more.

5. Microsoft's Artificial Intelligence (AI) Ethics, Law, and Policy: This course explores the ethical implications of AI. It covers topics such as fairness, transparency, privacy, and bias in AI systems.

6. deeplearning.ai's Deep Learning Specialization: This specialization on Coursera offers the first course, "Neural Networks and Deep Learning," for free. It provides a comprehensive introduction to deep learning techniques.

7. Berkeley's Artificial Intelligence: This course, available on edX, covers various AI topics such as search algorithms, logic, planning, and more. It provides a solid foundation in AI principles.

8. Fast.ai's Practical Deep Learning for Coders: This course is designed to make deep learning accessible for coders. It covers practical aspects of deep learning and provides hands-on experience with real-world applications.

9. UC San Diego's Machine Learning Fundamentals: This course offers an overview of machine learning principles, algorithms, and applications. It covers topics such as regression, clustering, and reinforcement learning.

10. IBM's Applied AI: This course on Coursera explores various AI applications in industries like healthcare, finance, and cybersecurity. It offers insights into how AI is being used in real-world scenarios.

These free courses provide a solid foundation in AI and cover a range of topics including machine learning, deep learning, ethics, and applications. They are a great way to get started and gain knowledge in the field of AI without incurring any cost.

AI tools

To help you with coding

 

 https://www.blackbox.ai/

 

 

Friday, November 24, 2023

sudo apt-update throwing "connection timed out error"

 If you face this "connection timed out error"

$ sudo apt update 
  Could not connect to in.archive.ubuntu.com:80 (*2403:8940:ffff::f*), connection timed out Could not connect to in.archive.ubuntu.com:80 (103.97.84.254), connection timed out
Err:8 http://in.archive.ubuntu.com/ubuntu bionic-updates InRelease
  Unable to connect to in.archive.ubuntu.com:http:
Err:9 http://in.archive.ubuntu.com/ubuntu bionic-backports InRelease
  Unable to connect to in.archive.ubuntu.com:http:
------------------------------------------------------------------------
 
1)sudo nano /etc/apt/sources.list
2) replace all http://**xx**.archive.ubuntu.com/ubuntu... to http://archive.ubuntu.com/ubuntu ...
 
https://askubuntu.com/questions/1198621/apt-get-cannot-connect-to-ubuntu-archives  
 

Wednesday, November 22, 2023

Create a bootable USB stick on Ubuntu

 

Download the Ubuntu to your system

  1. Insert your USB stick (select ‘Do nothing’ if prompted by Ubuntu)
  2. On Ubuntu 18.04 and later, use the bottom left icon to open ‘Show Applications’
  3. In older versions of Ubuntu, use the top left icon to open the dash
  4. Use the search field to look for Startup Disk Creator
  5. Select Startup Disk Creator from the results to launch the application

REFERENCES:

https://ubuntu.com/tutorials/create-a-usb-stick-on-ubuntu#3-launch-startup-disk-creator

Saturday, November 11, 2023

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory

 

See the current value of max-old-space-size (in MB)

 

node -e 'console.log(v8.getHeapStatistics().heap_size_limit/(1024*1024))'

 

 

That said, to increase the memory, in the terminal where you run your Node.js process:

 export NODE_OPTIONS="--max-old-space-size=8192"
 
Reference 
https://stackoverflow.com/questions/53230823/fatal-error-ineffective-mark-compacts-near-heap-limit-allocation-failed-javas 

Thursday, October 26, 2023

Test using REQBIN

 

 

1) Go to the website https://reqbin.com/curl


2) paste the curl and run to see validation errors

Wednesday, October 11, 2023

RESIZE AWS DISK SPACE - increase volume for ubuntu ec2 instance

 

To increase the storage space of an Amazon EC2 instance, you can follow these general steps. Keep in mind that this process may vary slightly depending on the EC2 instance type and your specific requirements:

  1. Create a Backup (Snapshot): Before making any changes, it's crucial to create a backup (snapshot) of your EC2 instance's EBS (Elastic Block Store) volume. This ensures that you have a point-in-time copy of your instance's data that you can restore if anything goes wrong during the resizing process.

    To create a snapshot, go to the AWS Management Console, navigate to the "EC2" service, select "Volumes" from the left sidebar, find your instance's EBS volume, right-click it, and choose "Create Snapshot."

  2. Stop the EC2 Instance: To make changes to the instance's storage, you will typically need to stop it first. In the AWS Management Console, right-click your instance, and choose "Instance State" > "Stop."

  3. Resize the EBS Volume: After stopping the instance, you can resize the EBS volume attached to it. Here's how:

    a. In the AWS Management Console, go to "EC2" and navigate to the "Volumes" section.

    b. Find the EBS volume that is attached to your EC2 instance.

    c. Right-click the volume and choose "Modify Volume."

    d. In the "Modify Volume" dialog, increase the volume size to your desired capacity.

    e. Confirm the changes, and AWS will perform the resize operation. This process usually completes quickly, but it might take a few minutes.

  4. Start the EC2 Instance: Once the volume is resized, you can start your EC2 instance again. Right-click your instance in the AWS Management Console and choose "Instance State" > "Start."

  5. Resize the File System: After resizing the EBS volume, you'll need to resize the file system on the instance to make use of the additional storage space. This step depends on the operating system you're using:

    • For Linux: If you're using Linux, you can use the resize2fs command to resize the file system. For example, if you're using ext4, you can run:

      bash
      lsblk //to find out partition name xvda1
      df -hT //to find the type of partition 
      sudo growpart /dev/xvda 1
      sudo resize2fs /dev/xvda1
      
       
  1. Verify the Storage Increase: 

     

    df -h 

Remember that these steps might vary slightly based on your specific EC2 instance type, region, and operating system. Always take precautions and create backups before making changes to your EC2 instance's storage to prevent data loss.

Wednesday, September 27, 2023

Set Up Firebase Integration

 

    • Go to the Firebase Console (https://console.firebase.google.com/) and create a new project or use an existing one.
    • Once the project is created, navigate to the "Project settings" and click on the "Cloud Messaging" tab to find your server key and sender ID. You'll need these for server-side integration.

     

    If server key is not available:

         

    1. Go to this link and enable: "Cloud Messaging" service:

    https://console.cloud.google.com/apis/api/googlecloudmessaging.googleapis.com

     

       2. In the project settings, add a web app (if you don't already have one) and download the Firebase configuration JSON file. You'll need this for server authentication.

     3. To get VAPID key, in the "cloud message" generate web push certificate key pair

     

     

     

     

     

     

     

     

     

     

     

     

     

    References: https://stackoverflow.com/questions/37427709/firebase-messaging-where-to-get-server-key

Saturday, August 26, 2023

DOCKER

REFERENCES:

https://www.freecodecamp.org/news/where-are-docker-images-stored-docker-container-paths-explained/

 

1)  The output contains information about your storage driver and your docker root directory

$ docker info 
 
2) A Docker container consists of network settings, volumes, and images.
 
 Ubuntu: /var/lib/docker/
 
3) Docker images
  Docker images are stored in /var/lib/docker/overlay2
 
4) Docker Volumes
 
$ docker run --name nginx_container -v /var/log nginx 
 
5)Clean up space used by Docker
$ docker system prune -a 
 
6) To get container size and container info
$ docker ps -s
$ docker ps -a 
 
7) pull down an image from a repository, 
docker pull 
create a container from an image that does not yet exist locally, each layer is
pulled down separately, and stored in Docker's local storage area, which is
usually /var/lib/docker/ 
 
8) Check out the sizes of the images:
docker image ls
9) create a volume
docker volume create my-vol 
10) List Volumes
docker volume ls

11) Inspect volume
docker volume inspect my-vol
 12) To backup volume
 docker run --volumes-from --container_name-- -v $(pwd):--path-- ubuntu tar cvf --path--/storage.tar /app/storage/app/public
13) To restore volume
docker run --rm --volumes-from --container_name-- -v $(pwd):--path-- bash -c "cd storage/app/public && tar xvf --path--/storage.tar" 
14) To restore volume 
docker exec -it docker-webserver-1 /bin/bash 
 
TTo Set up ssl certificate:

docker compose run --rm certbot certonly --manual --preferred-challenges dns -d example.com -d *.example.com -v
 
docker ps
docker restart docker-name
docker system df
 df -h
docker builder prune
docker exec -it docker-webserver-1 /bin/sh
docker logs docker-webserver-1
Dangling images are images that are not associated with any running containers and are not tagged with a specific version or name. These images are typically left behind when you build or pull new images, and older, unused versions are no longer needed. They can accumulate over time and consume disk space. 
docker image prune
docker container prune