Running a Docker Container with GUI on Mac OS

Got the idea/big picture from here: https://sourabhbajaj.com/blog/2017/02/07/gui-applications-docker-mac/, but had to do some more steps:

1. Install XQuartz

brew install xquartz

2. Run XQuartz

open -a XQuartz

3. Allow Network Connections (XQuartz/Preferences):

4. Get the Host IP

IP=$(ifconfig en0 | grep inet | awk '$1=="inet" {print $2}')

5. SET DISPLAY Environment Variable

export DISPLAY=$IP:0

6. Add Path to “xhost” to my zsh-Profile; added this line to .zshrc:

export PATH=/usr/X11/bin/xhost:$PATH

7. Added the IP with xhost

xhost + $IP

8. Run Firefox from Docker Container

docker run -d --name firefox -e DISPLAY=$IP:0 -v /tmp/.X11-unix:/tmp/.X11-unix jess/firefox

SSH für die Verbindung zu Azure DevOps oder Github

Schlüssel-Paar generieren und öffentlichen Schlüssel zum Repository kopieren

Schlüssel-Paar

ssh-keygen -C "martin@affolter.net"

Öffentlichen Schlüssel kopieren (cat gibt aus, pbcopy kopiert ins Clipboard)

cat ~/.ssh/id_rsa.pub

pbcopy < ~/.ssh/id_rsa.pub

Öffentlichen Schlüssel auf Azure Devops/Github hinzufügen.

Github: https://github.com/settings/keys
Azure: https://dev.azure.com/[Organisation]/_usersSettings/keys

Authentizität der Verbindung bestätigen

Azure

ssh -T git@ssh.dev.azure.com

Github

ssh -T git@github.com

bestätigen

Beim ersten Hinzufügen wird gefragt, ob die Authentizität des Servers Ok ist. Hier ein Beispiel mit Github:

The authenticity of host 'github.com (140.82.121.3)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no/[fingerprint])?

Die Fingerprints können online überprüft werden: https://docs.github.com/en/github/authenticating-to-github/githubs-ssh-key-fingerprints

Nach dem Eintippen von “yes” wird gemeldet:

Warning: Permanently added 'github.com,140.82.121.3' (RSA) to the list of known hosts.
Hi Mcafee123! You've successfully authenticated, but GitHub does not provide shell access.


Cheatsheet zum Umbenennen des Haupt-Branches in “main”

1. Schritt:

git branch -m master main

2. Schritt

git push -u origin main

3. Schritt

git push origin --delete master

Wenn es nicht klappt

Löschen nicht erlaubt

Das Löschen des master wird oft durch branch Policies verhindert:

Branch Policy, die ein direktes Modifizieren oder Löschen des Branches verhindert

Lösung: Policy ausschalten, bevor gelöscht wird.

Upstream zeigt noch auf master

git branch --unset-upstream

git branch --set-upstream-to=origin/main


Covisitor – Kontaktdaten-Erfassung leicht gemacht

Viele Unternehmen und Vereine müssen aufgrund der Corona-Regeln Kontaktdaten ihrer Besucher/Gäste/Kunden erfassen. Mangels einer erschwinglichen digitalen Lösung greifen die Meisten zu Papier und Stiften. Dies ist aber in mehrfacher Hinsicht nicht optimal und hat gegenüber einer digitalen Lösung vor allem den Nachteil, dass der Prozess für den Anbieter, wie auch für den Kunden zu aufwändig ist.

Die gesetzliche Erfassungspflicht der Kontaktdaten trifft vor allem kleine Vereine, die viel Aufwand betreiben müssten, um freiwillige Helfer für die manuelle Erfassung zu gewinnen. Aber auch kleinere Betriebe wie Restaurants, Bars, usw. sind von diesen Massnahmen betroffen.

Nun gibt es eine einfache Lösung im Web, die für alle benutzbar ist: Die Applikation Covisitor. Beim Betreten eines Lokals, eines Geschäfts oder einer Halle wird ein QR Code gescannt, der auf beim ersten Mal auf eine Erfassungsmaske führt. Dort werden die Kontaktdaten einmalig auf dem Smartphone erfasst. Von diesem Moment an reicht das Scannen eines Codes und ein Tap auf den “Eintreten”-Button für die Erfüllung dieser lästigen Pflicht. Die Daten werden in einer sicheren Datenbank in der Schweiz für max. einen Monat aufbewahrt und danach unwiderruflich gelöscht.

Weitere Informationen unter http://covisitor.ch.


affolter.NET ist neu gekleidet

wordpress-logo-stacked-rgb

Seit einiger Zeit bestraft Google die Websites, die nicht “responsive” sind, mit schlechteren Rankings. “Responsive” bedeutet, dass sich die Inhalte der Bildschirmgrösse des jeweiligen Endgeräts anpassen und sinnvoll nutzbar sind. Nach gut 5 Jahren war es sowieso Zeit, die Website zu überarbeiten.

Die Website von affolter.NET GmbH basiert neu auf WordPress. WordPress bietet ein sehr robustes Plugin-System. Für fast jede denkbare Funktionalität ist ein Plugin da – der am besten getestete und funktionierende Code ist der, den man nicht selber schreiben muss. Mit responsive Themes und SiteBuilder werden flexible Layouts möglich, die auf allen Endgeräten betrachtet werden können.

Das Design soll die Farben im Logo wiedergeben, aber ansonsten unaufgeregt und klassisch daher kommen. Kommentare sind erwünscht!


Hashdays are over

#days Volume I ist Geschichte.

Vorbei sind zwei Tage Workshops und zwei Tage interessante Talks mit ca. 160 Teilnehmern. Vorbei sind auch die interessanten Diskussionen, das feine Essen und vorbei ist eine denkwürdige Party…;-)

Als Vorstandsmitglied von DEFCON Switzerland, Organisator-Verein der Konferenz möchte ich dem Organisationskomitee gratulieren. Sie haben es geschafft, interessante Speakers einzuladen, genug Teilnehmer zu motivieren, Sponsoren aufzutreiben und sämtliche Abläufe zu planen und nach Plan durchzuziehen. Als Feedback der Speakers und Teilnehmer habe ich nur Positives gehört. Just great!