Skip to content

Instantly share code, notes, and snippets.

View jsirianni's full-sized avatar

Joseph Sirianni jsirianni

  • observIQ, Inc
  • Grand Rapids Michigan
View GitHub Profile
name: bindplane
type: Microsoft.App/containerApps
location: eastus
identity:
type: UserAssigned
userAssignedIdentities:
/subscriptions/redacted/resourcegroups/redacted/providers/Microsoft.ManagedIdentity/userAssignedIdentities/bindplane-uai: {}
- name: BINDPLANE_EVENT_BUS_TYPE
value: azure
- name: BINDPLANE_AZURE_CONNECTION_STRING
value: Endpoint=sb://redacted
- name: BINDPLANE_AZURE_TOPIC
value: redacted
- name: BINDPLANE_AZURE_SUBSCRIPTION_ID
value: redacted
- name: BINDPLANE_AZURE_RESOURCE_GROUP
value: redacted
memory_limiter:
check_interval: 1s
limit_mib: 150000
@jsirianni
jsirianni / gist:4a0d2e4bd8eef8e00a4f793b481ee1e7
Created October 9, 2025 15:41
Azure Container Apps Collector
# Deployment steps:
# 1. Search and replace "your-managed-environment-id" with the managed environment ID in the collector deployment
# 2. Search and replace "your-api-key" with the Datadog API key in the datadog exporter
# 3. Search and replace "us5.datadoghq.com" with the Datadog site to send data to
# 4. Make any additional changes as needed, such as location
# 5. Deploy the collector to Azure Container Apps
# 6. Configure Bindplane to forward telemetry to this collector (See below)
#
# Configure Bindplane to forward telemetry to the collector's
# gRPC port 4317. OTLP HTTP (port 4318) is not supported by Bindplane.
@jsirianni
jsirianni / gist:a89bffdb262b54fd3860b58cbc4ce06a
Created October 1, 2025 03:51
FreeBSD Plex Media Service setup
# ======================================================================
# Prerequisite: Download & extract Plex into the final location so that
# /usr/local/share/plex/Plex Media Server exists.
# Example:
# tar -xjf PlexMediaServer-<ver>-FreeBSD-amd64.tar.bz2 -C /usr/local/share
# mv /usr/local/share/PlexMediaServer-<ver> /usr/local/share/plex
# ======================================================================
# 1) Create user/group (UID/GID 1000)
pw userdel plex -r 2>/dev/null || true
@jsirianni
jsirianni / Dockerfile
Created April 29, 2025 15:34
Build Prometheus for Bindplane
# TAG arg should be the version of prometheus to use
# without the v prefix
ARG TAG
FROM prom/prometheus:v${TAG}
# Prometheus user has uid 65534
COPY --chown=65534 --chmod=0600 package/prometheus/config/prometheus.yml /etc/prometheus/prometheus.yml
COPY --chown=65534 --chmod=0600 package/prometheus/config/rules.yml /etc/prometheus/rules.yml
COPY --chown=65534 --chmod=0600 package/prometheus/config/web.yml /etc/prometheus/web.yml
@jsirianni
jsirianni / gist:f964cfee3d323715aebbdaec2791b4d5
Created March 28, 2025 21:50
test-sql-query-bindplane-docker
# version: "3.8"
# services:
# postgres:
# image: postgres:16
# environment:
# POSTGRES_USER: user
# POSTGRES_PASSWORD: password
# POSTGRES_DB: testdb
# ports:
@jsirianni
jsirianni / ingress.yaml
Last active February 5, 2025 15:54
alb-otlp-http-4318
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: bindplane-agent-ingress
namespace: bindplane-agent
annotations:
alb.ingress.kubernetes.io/scheme: internal
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 4318}, {"HTTP": 4317}]'
alb.ingress.kubernetes.io/group.name: bindplane-internal
---
kind: SecurityContextConstraints
apiVersion: security.openshift.io/v1
metadata:
name: bindplane-gateway-agent
namespace: pipe-adt01
readOnlyRootFilesystem: false
requiredDropCapabilities: null
runAsUser:
type: RunAsAny
# kubectl create -f https://download.elastic.co/downloads/eck/2.14.0/crds.yaml
# kubectl apply -f https://download.elastic.co/downloads/eck/2.14.0/operator.yaml
# kubectl create ns elasticsearch
# kubectl -n elasticsearch get secret quickstart-es-elastic-user -o go-template='{{.data.elastic | base64decode}}'
# kubectl -n elasticsearch port-forward svc/quickstart-kb-http 5601
# https://localhost:5601
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
name: quickstart