Skip to content

Instantly share code, notes, and snippets.

View marcelo-ochoa's full-sized avatar

Marcelo Ochoa marcelo-ochoa

View GitHub Profile
@marcelo-ochoa
marcelo-ochoa / docker-compose-portainer.yml
Created October 28, 2019 14:16
A docker compose stack for Portainer.IO and agents using GlusterFS volume driver plugin
version: '3.6'
services:
agent:
image: portainer/agent
environment:
AGENT_CLUSTER_ADDR: tasks.portainer_agent
# AGENT_PORT: 9001
# LOG_LEVEL: debug
volumes:
@marcelo-ochoa
marcelo-ochoa / docker-compose.yml
Last active August 25, 2023 16:28
Traefik plus Portainer stack
version: "3.6"
services:
whoami:
image: traefik/whoami:v1.6.0
deploy:
mode: replicated
replicas: 1
labels:
- traefik.enable=true
@marcelo-ochoa
marcelo-ochoa / create-lb-certs.sh
Created October 14, 2020 18:47
Register a LetsEncrypt cert at the Oracle Cloud Load Balancer
#!/bin/bash
cd /etc/letsencrypt
cert_number=$(ls csr/|tail -1|sed s/_.*//)
cert_name=$RENEWED_DOMAINS-$cert_number
echo $cert_name
/root/bin/oci lb certificate create --load-balancer-id $OCID --certificate-name $cert_name --public-certificate-file /etc/letsencrypt/live/$RENEWED_DOMAINS/cert.pem --private-key-file /etc/letsencrypt/live/$RENEWED_DOMAINS/privkey.pem
sleep 30
/root/bin/oci lb listener update --force --listener-name lb_ssl --default-backend-set-name bs_default --port 443 --protocol HTTP --load-balancer-id $OCID --ssl-certificate-name $cert_name
@marcelo-ochoa
marcelo-ochoa / registry.conf
Created October 28, 2019 14:45
Docker private registry frontend definition
upstream docker-registry {
server 10.0.1.20:5000;
server 10.0.1.22:5000;
}
## Set a variable to help us decide if we need to add the
## 'Docker-Distribution-Api-Version' header.
## The registry always sets this header.
## In the case of nginx performing auth, the header is unset
## since nginx is auth-ing before proxying.
@marcelo-ochoa
marcelo-ochoa / nginx.conf
Created October 28, 2019 14:36
A simple nginx.conf with additions to log real-IP if it behind a load balancer
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
@marcelo-ochoa
marcelo-ochoa / portainer.conf
Created October 28, 2019 14:40
Portainer.IO site frontend definition
upstream portainer {
server 10.0.1.20:9000;
server 10.0.1.22:9000;
}
server {
listen 80;
server_name portainer.mydomain.com;
location / {
@marcelo-ochoa
marcelo-ochoa / docker-compose-nginx.yml
Created October 28, 2019 14:33
A docker stack deploy for NGINX working as frontend for Portainer.IO and docker private registry
version: '3.6'
services:
server:
image: nginx
hostname: www.mydomain.com
networks:
- lb_network
ports:
- "80:80"
@marcelo-ochoa
marcelo-ochoa / docker-compose-registry.yml
Created October 28, 2019 14:13
A docker stack for deploying a private docker registry and UI using GlusterFS volume plugin driver
version: '3.6'
services:
registry:
image: registry:2
ports:
- "5000:5000"
networks:
- lb_network
volumes:
@marcelo-ochoa
marcelo-ochoa / registry-ui.conf
Created October 28, 2019 14:48
Config file to define a frontend for registry UI
upstream registry-ui {
server 10.0.1.20:5008;
server 10.0.1.22:5008;
}
server {
listen 80;
server_name registry-ui.mydomain.com;
location / {
@marcelo-ochoa
marcelo-ochoa / whoami-tls.yaml
Created June 22, 2021 13:56
WhoAmi TLS LetsEncrypt cert generation test
# whoami-tls.yaml
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: app-tls
spec:
entryPoints:
- websecure
routes:
- kind: Rule