Skip to content

Instantly share code, notes, and snippets.

View s4ke's full-sized avatar
👨‍💻

Martin Braun s4ke

👨‍💻
View GitHub Profile
@nicosingh
nicosingh / Dockerfile
Last active September 4, 2022 18:09
pg_auto_failover sample cluster
FROM centos:7
RUN curl https://install.citusdata.com/community/rpm.sh --output rpm.sh && \
chmod +x rpm.sh && \
bash rpm.sh && \
rm -f rpm.sh
RUN yum install -y \
pg-auto-failover10_11\
postgresql11-contrib \
@BretFisher
BretFisher / swarm-upgrade.md
Last active October 22, 2025 09:55
docker swarm upgrade

Replace your Swarm Manager and Workers with updated versions of docker

  • it's best to replace nodes, don't do apt/yum upgrades.
  • both would work, but VM replacment forces me to think of it as immutable and prevents making pets
  • if you don't want to update join scripts for manager IP's, then do something like Elastic IP's so manager IP's won't change.

Lets assume you have 3 managers and 3 workers on 17.06 and you want to update to 17.12

  • managers: m1, m2, m3
<profile>
<id>db-diff</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<dependencies>
</dependencies>
@ekreutz
ekreutz / ansible_variable_precedence.md
Last active October 2, 2025 09:48
Ansible variable precedence (order, hierarchy)
@thomasdarimont
thomasdarimont / app.py
Last active August 18, 2025 13:55
Simple python example using flask, flask_oidc and keycloak
import json
import logging
from flask import Flask, g
from flask_oidc import OpenIDConnect
import requests
logging.basicConfig(level=logging.DEBUG)
app = Flask(__name__)
@ckoepp
ckoepp / change_mac_address
Last active March 16, 2023 23:34
A small bash script to change a mac address - includes one line of Python to generate random numbers.
#!/bin/bash
# The MIT License (MIT)
#
# Copyright (c) 2014 Christian Koepp <christian.koepp@tum.de>
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the 'Software'), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
@banaslee
banaslee / XGH - de-de.txt
Last active September 23, 2025 08:25
eXtreme Go-Horse Process
eXtreme Go Horse (XGH) Process
Quelle: http://gohorseprocess.wordpress.com
Übersetzung ursprünglich von https://gist.github.com/Neffez/f8d907ba8289f14e23f3855011fa4e2f
1. Ich denke, also ist es nicht XGH.
In XGH wird nicht gedacht, es wird das erste gemacht, was in den Sinn kommt. Es gibt auch keine zweite Option, die erste ist schneller.
2. Es gibt 3 Wege ein Problem zu lösen: den richtigen Weg, den falschen Weg und den XGH Weg, welcher exakt wie der falsche ist, aber schneller.
@xeoncross
xeoncross / f.php
Created December 20, 2011 22:30
1kB Forum with added IP logging
<?checkdnsrr(join('.',array_reverse(explode('.',$p=getenv('REMOTE_ADDR')))).".opm.tornevall.org","A")&&die('Bad Bot');mysql_connect(0,'root','');mysql_select_db('d');extract($_REQUEST);$v=(int)@$v;$i=0;$q='mysql_query';$f='mysql_fetch_row';$n='mysql_num_rows';$x='<input type="';$s="SELECT*FROM";$t='CREATE TABLE IF NOT EXISTS t(i INT AUTO_INCREMENT,a INT,b TEXT,KEY(i))';$h='htmlspecialchars';$q($t);$q(strtr($t,'t','p'));$l=' ORDER BY';$o='';$u='INSERT INTO';$c="b)VALUES(";if(@$b){if(!$v)$q("$u t(a,$c INET_ATON('$p'),'$e')");$v=max($v,mysql_insert_id());$q("$u p(a,$c'$v','$b')");}if($v){$t=$q("$s p WHERE a=$v$l i");echo'<a href="f.php">Back</a>';for(;$i<$n($t);++$i){$r=$f($t);echo'<hr/>'.nl2br($h($r[2]));}}else{$t=$q("$s t$l-i");for(;$i<$n($t);++$i){$r=$f($t);echo'<a href="f.php?v='.$r[0].'">'.$h($r[2]).'</a><br/>';}$o='Title:'.$x.'text"name="e"/><br/>';}echo'<hr/>Post:<form method="post">'.$x.'hidden"name="v"value="'."$v\"/>$o<textarea name=\"b\"></textarea>$x";?>submit"name="w"value="Post"/></form>