devops

“Streamlined DevOps: Node.js CI/CD Pipeline with GitHub Actions”

“Streamlined DevOps: Node.js CI/CD Pipeline with GitHub Actions”

This project demonstrates a robust Continuous Integration and Continuous Deployment (CI/CD) pipeline setup using GitHub Actions. CI/CD which stands for Continuous Integration and Continuous Delivery/Deployment is a set of practices and tools used in software development to improve the speed and quality of code delivery. Continuous Integration (CI): Developers frequently merge their code changes into a central repository where Automated builds and tests are run.This helps catch and fix integration issues early. Continuous Delivery (CD): This process automatically prepare code changes for release to production by ensuring that the code is always in a deployable state.It automatically deploys every change…
Read More
Cron Job Basics

Cron Job Basics

A cron job is a scheduled task that runs automatically at specified times or intervals on Unix-like operating systems. Cron jobs are used to automate repetitive tasks, like running scripts, backing up databases, or generating reports. Key Components of a Cron Job: Cron Daemon (cron): The cron daemon is a background process that reads scheduled tasks from the crontab file and executes them at the specified times. This process continuously runs on the system and checks every minute for tasks to execute. Crontab: A crontab (cron table) is a simple text file that lists cron jobs, specifying when and what…
Read More
Some Best Practices for Writing Dockerfiles

Some Best Practices for Writing Dockerfiles

When writing Dockerfiles for PHP and MySQL, it's important to focus on security, efficiency, and maintainability. Here are some best practices specific to Dockerfiles for PHP and MySQL environments: 1. Use Official Base Images 2. Minimize PHP Extensions and Packages 3. Optimize PHP Configuration 4. Leverage Multi-Stage Builds for PHP 5. Configure MySQL for Production 6. Persist MySQL Data Using Volumes 7. Use .dockerignore for PHP Projects 8. Keep the Image Lean 9. Use Supervisord for Managing Multiple Processes Why: If your PHP container needs to run multiple services (e.g., PHP-FPM and a cron job), use supervisord to manage them…
Read More
Database Migration from OnPrem to AWS RDS

Database Migration from OnPrem to AWS RDS

This project provides a step-by-step guide on how to migrate a WordPress website and MariaDB database from on-premises to AWS, using peering connections and AWS services such as EC2, RDS, and DMS. The guide covers setting up the simulated environment, creating VPC and peering connection, launching instances, setting up DMS replication, and testing. Installation To use this project, you need to have the following: A simulated AWS on-prem env with a WordPress website and MariaDB database. An AWS account with access to EC2, RDS, and DMS. The guide covers the following steps: Assuming a simulated on-premises environment on AWS with…
Read More
Why Devs Love Open Source KitOps–Tales from the ML Trenches

Why Devs Love Open Source KitOps–Tales from the ML Trenches

In the world of AI/ML there are a lot of puff pieces singing the latest technical innovation. Most of the time, these innovations aren’t being used outside of a cadre of scientists who have adopted. In contrast, we put together this article to share how a real user at a real company is using KitOps - and explain, in stark terms, why KitOps is the only solution that meets their needs. The Folly of TARs and S3 First, let's address the elephant in the room: TAR files. Yes, they’re handy little bundles of joy, squeezing your artifacts into neat, portable…
Read More
Real-World Attack Testing with SafeLine: A Guide to Dynamic Protection

Real-World Attack Testing with SafeLine: A Guide to Dynamic Protection

1. Introduction to SafeLine Since 2016, Chaitin Tech has been committed to making cybersecurity accessible to everyone. They initially open-sourced SafeLine's semantic analysis engine and have since released various plugins and communication protocols associated with SafeLine. In April 2023, Chaitin took it a step further by launching a free community edition of SafeLine on GitHub. This move allows more developers and companies to experience the power of SafeLine’s semantic analysis algorithms at zero cost, aiming to advance the development and application of intelligent semantic analysis in cybersecurity. 2. Experiencing Dynamic Protection Introduction to Dynamic ProtectionThe Dynamic Protection feature is a…
Read More
You Don’t Have to Be a Victim

You Don’t Have to Be a Victim

I’d pray for you not to experience a major security incident because it can be a nightmare of lost data, compromised integrity, and shattered trust. In today’s digital landscape, where threats lurk in every corner of the cloud, securing your AWS resources is no longer just an option—it's a necessity. You don’t have to be a victim; instead, you can proactively secure your assets and sleep peacefully knowing your infrastructure is protected. Here's how you can own the safari and feel the sun without getting burned. Security Groups and Network Access Control Lists: The First Line of Defense In the…
Read More
Protect Your Website Like a Pro: SafeLine, the Open-Source WAF

Protect Your Website Like a Pro: SafeLine, the Open-Source WAF

When you launch a website, the first challenge you may encounter might not come from your customers, but from threats lurking online. That’s why we’re introducing SafeLine, an open-source Web Application Firewall (WAF) that’s quickly becoming a favorite on GitHub. SafeLine is designed to shield your website from malicious attacks, ensuring that your online presence remains secure. What is SafeLine? SafeLine is a free and powerful WAF, built with simplicity in mind. It uses advanced semantic detection technology to guard against common web attacks like SQL injections and cross-site scripting (XSS). Operating as a reverse proxy, SafeLine intelligently filters traffic,…
Read More
Bridging Jira and GitLab: Automating CI/CD Pipelines for Releases

Bridging Jira and GitLab: Automating CI/CD Pipelines for Releases

Introduction Jira Cloud and GitLab are popular productivity and DevOps platforms widely used by many organizations and software development teams. While the integration between these platforms has significantly improved in recent years, there are still areas in common software development tasks that require manual effort or custom integration solutions. One such area is software releases. In this post, I will demonstrate how to streamline and automate this process, it will be useful for teams who: Plan and manage tasks in Jira; Use Jira versions for planning product milestones and releases; Keep their source code in GitLab; Use GitLab's CI/CD pipelines…
Read More
Scheduled Test Workflow Documentation

Scheduled Test Workflow Documentation

Overview This documentation provides a detailed explanation of the setup for a cron job scheduled test in a GitHub Actions workflow. The purpose of this setup is to automate the execution of test scripts against a Postman collection every 15 minutes, ensuring continuous testing and monitoring of the boilerplate repository's API endpoints. GitHub Actions Workflow Configuration name: Scheduled Test on: schedule: - cron: '*/15 * * * *' jobs: build: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v3 - name: Run test script env: POSTMAN_API_KEY: ${{ secrets.POSTMAN_API_KEY }} API_URL: ${{ secrets.API_URL }} run: | cd qa chmod +x test.sh…
Read More
No widgets found. Go to Widget page and add the widget in Offcanvas Sidebar Widget Area.