Compare commits

..

No commits in common. "master" and "v2" have entirely different histories.
master ... v2

2 changed files with 11 additions and 27 deletions

View File

@ -2,8 +2,8 @@
* Erkan Yanar * Erkan Yanar
* erkan@linsenraum.de * erkan@linsenraum.de
* xing/[linkedin](https://www.linkedin.com/in/erkanyanar/) * xing/linkedin
* https://linsenraum.de * http://linsenraum.de
Und ja: Freiberufler Und ja: Freiberufler
@ -12,11 +12,11 @@ Und ja: Freiberufler
* Docker/LXC/systemd-nspawn/Rkt * Docker/LXC/systemd-nspawn/Rkt
* Alles nur Linux * Alles nur Linux
* Jeder gute Admin sollte eh alles kennen was jetzt kommt * Jeder gute Admin sollte eh alles kennen was jetzt kommt.
# Container vs. VM # Container vs. VM
* VMs emulieren Hardware * VMs eumulieren Hardware
* Ein Container ist nur ein Prozess auf dem Host * Ein Container ist nur ein Prozess auf dem Host
* Was immer das auch heißt * Was immer das auch heißt
@ -67,22 +67,14 @@ Aber am Ende:
Imho noch ein `pstree` mitlaufen lassen: Imho noch ein `pstree` mitlaufen lassen:
~~~ ~~~
readlink /proc/self/ns/* unshare -p -f -m -u -n -i
unshare -p -f -m -u -n -i
readlink /proc/self/ns/*
chroot /tmp/container sh chroot /tmp/container sh
ps ax .. und ein Hups ps ax .. und ein Hups
~~~ ~~~
Genau das machen was da steht. Auch wenn nicht (leere Ausgabe!): Genau das machen was da steht. (`mount -t proc proc /proc`)
~~~ Und schauen ob andere Prozess was in /tmp/container/proc sehen :)
mount -t proc proc /proc
~~~
Und schauen ob andere(host) Prozesse was in /tmp/container/proc sehen :)
Wie "verlassen/terminieren" unseren Container.
# Mount # Mount
@ -98,8 +90,8 @@ docker container run --volume /var/tmp:/srv --rm -ti ubuntu
~~~ ~~~
mkdir /tmp/container/haha mkdir /tmp/container/haha
unshare -p -f -m -u -n -i
mount --bind /var/tmp /tmp/container/haha mount --bind /var/tmp /tmp/container/haha
unshare -p -f -m -u -n -i
chroot /tmp/container sh chroot /tmp/container sh
ls /haha ls /haha
~~~ ~~~
@ -116,7 +108,7 @@ Achso: wieder ein `pstree` mitlaufen lassen :)
## Cgroups v1 ## Cgroups v1
Sollte nicht (im Sinne von wtf. nutzt Du?) mehr funzen Sollte nicht mehr funzeen
~~~ ~~~
mkdir /sys/fs/cgroup/pids/lala mkdir /sys/fs/cgroup/pids/lala
@ -137,8 +129,6 @@ echo 5 >/sys/fs/cgroup/container/pids.max
Ruhig ein paar Prozesse im Container starten. Klappt schnell nicht 😎 Ruhig ein paar Prozesse im Container starten. Klappt schnell nicht 😎
Wieder Container beenden
# Artefakt # Artefakt
Aber jeder Container schreibt doch ein einen eigenen Layer Aber jeder Container schreibt doch ein einen eigenen Layer
@ -160,7 +150,7 @@ mkdir /tmp/upper2 /tmp/work2 /tmp/runningcontainer2
mount -t overlay overlay -o lowerdir=/tmp/container,upperdir=/tmp/upper2,workdir=/tmp/work2 /tmp/runningcontainer2 mount -t overlay overlay -o lowerdir=/tmp/container,upperdir=/tmp/upper2,workdir=/tmp/work2 /tmp/runningcontainer2
~~~ ~~~
Und jetze je nach /tmp/runningcontainer1 und /tmp/runningcontainer2 "reincontainern" (s.o)
# Netzwerk? # Netzwerk?
@ -198,7 +188,7 @@ Haben wir noch Zeit?
Und wenn schon! Und wenn schon!
* Container ohne Network starten. Mit nsenter Pakete installieren * Container ohne Network starten. Mit nsenter Paketer installieren
* Netzwerk in einem Container mit Host-Tools debuggen * Netzwerk in einem Container mit Host-Tools debuggen
@ -208,12 +198,6 @@ Und wenn schon!
* Von wegen VM :) * Von wegen VM :)
* I.e. Security ist 0815 Linux-Admin-Knowhow * I.e. Security ist 0815 Linux-Admin-Knowhow
# Btw:
* Capabilities missing
* Syscalls missing
* SELinux/Apparmor/Landlock missing
# Links # Links
[bocker](https://github.com/p8952/bocker) [bocker](https://github.com/p8952/bocker)

BIN
qr.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB