Skip to content

Instantly share code, notes, and snippets.

View diegofcornejo's full-sized avatar
🪄
randomtechguy

Diego Cornejo diegofcornejo

🪄
randomtechguy
View GitHub Profile

docker-compose.yml

services:
  minio:
    image: quay.io/minio/minio
    container_name: minio
    ports:
      - "127.0.0.1:9200:9000"
      - "127.0.0.1:9201:9001"
 volumes:
@diegofcornejo
diegofcornejo / 1. MicroK8S Ubuntu.md
Created February 7, 2025 01:38
How to Install MicroK8S on Ubuntu 24.04 (Single Node)

How to Install MicroK8S on Ubuntu 24.04 (Single Node)

Install MicroK8S

sudo snap install microk8s --classic

Add the current user to the microk8s group

@diegofcornejo
diegofcornejo / docker-compose.yml
Last active February 22, 2025 02:23
Deploy IPFS node with docker compose an expose with nginx
services:
ipfs:
image: ipfs/kubo:latest
container_name: ipfs
volumes:
- ./ipfs_path:/data/ipfs
- ./ipfs_export:/export
- ./ipfs_fuse:/ipfs
- ./ipns_fuse:/ipns
@diegofcornejo
diegofcornejo / docker-compose.yml
Created January 20, 2025 15:23
Neko rooms - docker compose
networks:
default:
attachable: true
name: "neko-rooms-net"
services:
neko-rooms:
image: "m1k1o/neko-rooms:latest"
restart: "unless-stopped"
environment:
@diegofcornejo
diegofcornejo / apache-guacamole-docker-compose.md
Last active January 10, 2025 04:31
Install Apache Guacamole (PostgreSQL) with docker compose

Install Apache Guacamole (PostgreSQL) with docker compose

Copy the docker compose file to the server

Get the database script for postgres

docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --postgresql > initdb.sql

Init the database (just the database)

docker compose up -d postgres
docker logs -f guacamole-postgres
@diegofcornejo
diegofcornejo / ec2-prometheus-node_exporter.md
Last active February 21, 2025 02:47
Install Prometheus and Node Exporter on EC2 Linux AMI 2023

Install Prometheus and Node Exporter on EC2 Linux AMI 2023

Prerequisites

Create prometheus user

sudo useradd -M -U prometheus

Install Node Exporter

@diegofcornejo
diegofcornejo / eml-download-attachments.js
Created December 16, 2024 20:27
Download attachments from EML file
const EmlParser = require('eml-parser');
const fs = require('fs');
const path = require('path');
// Define paths
const filesPath = 'files';
const resultsPathPrefix = 'results';
const timestamp = new Date().toISOString().replace(/[:]/g, '-').split('.')[0];
const resultsPath = path.join(resultsPathPrefix, timestamp);
@diegofcornejo
diegofcornejo / verify-pdf-signature.js
Created December 14, 2024 02:49
Verify PDF Signature
const verifyPDF = require('pdf-signature-reader-jpc');
const fs = require('fs');
const path = require('path');
// Define paths
const filesPath = 'files';
const resultsPathPrefix = 'results';
const timestamp = new Date().toISOString().replace(/[:]/g, '-').split('.')[0];
const resultsPath = path.join(resultsPathPrefix, timestamp);
const verifiedPath = path.join(resultsPath, 'verified');
@diegofcornejo
diegofcornejo / Dockerfile
Last active February 24, 2025 13:46
Cronicle Docker Compose
FROM docker:27.0
LABEL maintainer="BlueT - Matthew Lien - 練喆明 <[email protected]>"
# Docker defaults
ENV CRONICLE_VERSION 0.9.73
ENV CRONICLE_base_app_url 'http://localhost:3012'
ENV CRONICLE_WebServer__http_port 3012
ENV CRONICLE_WebServer__https_port 443
ENV EDITOR=nano
@diegofcornejo
diegofcornejo / 1. GRAFANA PINO DASHBOARD.md
Last active March 1, 2025 10:04
Grafana Dashboard for Pino HTTP Logs - Express JS example

Pino HTTP Logs Dashboard
This Grafana dashboard utilizes the Loki data source to visualize and analyze logs generated by the Pino logging library. Logs from HTTP requests are captured using the Pino-HTTP plugin and are sent to a Loki instance via the Pino-Loki plugin, enabling real-time monitoring and historical analysis. The dashboard includes graph and table panels to display key metrics such as request status codes, response times, and error rates, making it easy to track application behavior and identify performance issues.

Flow Overview:

  1. Pino: Captures structured logs in a JSON format.
  2. Pino-HTTP: Specifically designed to handle HTTP request/response logging, capturing details such as request method, URL, and status code.
  3. Pino-Loki: Transmits the