Docker & Træfik – Loadbalancer made easy

Today in Docker. A scalable, nginx based, demo environment behind a loadbalancer in 26 lines and 2 commands.

We’ll be using Træfik and the Nginx based “whoami” container.

Get it

First of, let’s start with our Docker compose file:

version: '2'

services:
  proxy:
    image: traefik
    command: --web --docker --docker.domain=docker.localhost --logLevel=DEBUG
    networks:
      - webgateway
    ports:
      - "80:80"
      - "8080:8080"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /dev/null:/traefik.toml

  whoami:
    image: emilevauge/whoami
    networks:
      - webgateway
    labels:
      - "traefik.backend=whoami"
      - "traefik.frontend.rule=Host:whoami.docker.localhost"

networks:
  webgateway:
    driver: bridge

Now, a little more detail, you create the URL that your server will be reachable with the “label” command on line 20:

labels:
      - "traefik.backend=whoami"
      - "traefik.frontend.rule=Host:whoami.docker.localhost"

This will create the service “whoami” in the loadbalancer and will make it accessible trough “whoami.docker.localhost”

Line 7 & 18 create the network and line 24-26 sets the properties.

Run it

Now, up it:

docker-compose up -d

And scale the service whoami:

docker-compose scale whoami=10

Now you can visit the loadbalancer on http://localhost:8080 or docker.localhost:8080 . This will look like:

After that, simply go to http://whoami.docker.localhost and you will get output similar to:

Hostname: 0ba96cbfa379
IP: 127.0.0.1
IP: ::1
IP: 172.18.0.31
IP: fe80::42:acff:fe12:1f
GET / HTTP/1.1
Host: whoami.docker.localhost
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding: gzip, deflate, sdch, br
Accept-Language: en-US,en;q=0.8
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
X-Forwarded-For: 172.18.0.1
X-Forwarded-Host: whoami.docker.localhost
X-Forwarded-Proto: http
X-Forwarded-Server: 66978d8364ac

Now, every time you refresh the Hostname and IP should change ( because the loadbalancer is redirecting you to another instance.

And that’s it.

#5985 +(44) [X]

<Foggi> french are good for 2 things
<Foggi> art
<Foggi> and surrendering

Wachtwoorden zijn stom — SSH keys FTW

Omdat ik het zelf altijd vergeet, een kleine handleiding ( voor mij en jullie ). Op deze manier kun je “wachtwoord loos” inloggen op je linux / max / iets servers. Ik zet dat even tussen haakjes omdat je ( als je echt veilig wil zijn ) wel 1 keer een wachtwoord mag invullen. De meeste OS’en kunnen dit wachtwoord gelukkig gewoon onthouden.

TO THE TERMINAL!!!!!!

Stap 1 generate tha keyyyyyyyy

ssh-keygen -t rsa -C "email@adres.nl"

Hier krijg je dus de keuze om een passphrase op te geven. Dit is een wachtwoord dat jouw sleutel beveiligd ( als iemand jouw sleutel namelijk kan kopiëren kan men in feite inloggen ). Met een passphrase beveilig je dit, je OS onthoud deze meestal en maakt het dus mogelijk om in te loggen zonder wachtwoord.

Dit ziet er ziet er zo uit:

Stap 2 copy tha keyyyyyyyyyyyyyyy to da server

cat ~/.ssh/id_rsa.pub | ssh user@server "cat >> ~/.ssh/authorized_keys"

Stap 3 RELOADINGGGG!!!
Op de server:

reload ssh of /etc/init.d/sshd restart

#330261 +(18496)- [X]
<i8b4uUnderground> d-_-b
<BonyNoMore> how u make that inverted b?
<BonyNoMore> wait
<BonyNoMore> never mind

Getting Holy On a MacBook – Boot up delay verwijderen bij alternatief OS.

.

Wat nou als je zo gek bent als ik een een alternatief OS op je MacBook ( 3.1 ) wil draaien ipv oh gloryous OS X. Dan kan je weleen schrikken van de boot tijden. Want zonder een Mac Partitie is EFI ( de BIOS variant van Apfel ) is je MacBeuk +/- 30 seconden bezig de default boot te zoeken voordat hij het in zijn kop haalt om een alternatief OS te starten.

.

Gelukkig is hier een ( heilige ) weg omheen. Meet:

.

bless -- set volume bootability and startup disk options
.
bless zorgt er dus voor dat je een andere disk als prime boot kunt kiezen en de 30 seconden 
delay kunt verwijderen.
.
Benodigdheden:
  1. 1. MacBook met Alt OS
  2. 2. Mac CD ( OS startup disk )
  3. 3. ?????
  4. . Profit.

.

Steps:

  1. 1. Vraag jezelf af of je dit echt wil, een ALT OS ( Linux/Windhoos ) op je MacBook ?
  2. 2. Zeker weten ?
  3. 3. Ok dan.
  4. 4. Insert CD en boot ( Press C during startup ) voor Start up from a bootable CD, DVD, or USB thumb drive (such as OS X install media).
  5. 5. Vervolgens annuleer je de installatie en kies je de Terminal uit hulptools.
  6. 6. Gebruik ‘diskutil list’omje boot disk te zoeken.
  7. 7. Vervolgens:
  8. .
  9. bless --device /dev/disk0s2 --setBoot --legacy --verbose ( Waar /dev/disk0s2 je boot partitie is ).
  10. .
  11. 8. And we be done here.

.

That is all, reboot die mac en geniet van fatsoenlijke boot tijden.

.

Geek out.

.

Reverse the Polarity of the Neutron Flow!”

.