Bedeutung

Es ermöglicht die schnellste Installation und Bereitstellung eines Linux-Betriebssystems. Die Installation ist schnell und einfach, und du kannst fast sofort mit dem Ausführen von Docker beginnen. Es läuft sehr schnell und verwendet eine RAM-Disk.

Meine Situation

Win8-Laptop, gelegentlich zum Spielen genutzt, aber die Installation eines Linux-Dual-Boots könnte bei mir einen Tag dauern. Meine gesamte Arbeit muss nur in Docker laufen. Und mein Laptop hat genug Speicher: 16G (danke an Lehrer Jiang an der HUST).

CoreOS 在 PC 上快速安装上手

Vorbereitung

  1. CoreOS-Image Download-Link
  2. EasyBCD Download-Link

Erste Schritte

  1. Installieren Sie EasyBCD, fügen Sie einen ISO-Boot-Eintrag hinzu und verwenden Sie direkt das LiveCD-Image von CoreOS.
    Detaillierte Schritte mit Screenshots:http://jingyan.baidu.com/article/466506586ed309f549e5f81c.html
  2. Starten Sie CoreOS und schließen Sie die CoreOS-Installation ab.

Update

Aktualisieren Sie einfach die zum Booten verwendete ISO-Datei.

Nachteile

  1. Keine Persistenz (der daraus resultierende Vorteil: Wenn etwas kaputtgeht, einfach neu starten).
  2. Das gesamte Betriebssystem erzeugt Dateien auf der Festplatte und belegt direkt Speicherplatz (der Vorteil, den das mit sich bringt: Die Festplattengeschwindigkeit wird stark verbessert).
  3. Bei jedem Start müssen Sie den Festplattenspeicher manuell einbinden und das Initialisierungsskript des gesamten Systems manuell ausführen.

Wenn man die Vor- und Nachteile abwägt, wird diese Konfiguration für Arbeiten mit spezifischen, festen Aufgaben empfohlen. Wenn Sie mehr Aufgaben haben, gibt es möglicherweise mehr Dinge zu optimieren.

Konfiguration

  1. Erstellen Sie einen 100G großen Speicherplatz auf der Festplatte, formatieren Sie ihn. Referenzbefehl: mkfs.ext4 /dev/sda2, dann einbinden. Wenn Sie nicht verstehen, wie man partitioniert, formatiert und einbindet, lesen Sie bittehier. Dieser Artikel ist wohl der beste, den ich über grundlegende Festplattenverwaltung gesehen habe.
  2. Kopieren Sie nach dem Einbinden den Ordner /var/lib/docker/ an den eingebundenen Ort und setzen Sie dann einen symbolischen Link zurück. (Dann können Docker-Images auf der Festplatte persistiert werden und gehen nach einem Neustart nicht verloren.) Die Referenzoperationen sind wie folgt:
    cp -rf /var/lib/docker /mnt/
    rm -rf /var/lib/docker
    ln -s /mnt/docker /var/lib/docker
    

Referenz zu meiner Initialisierungsdatei

mkdir /root/.ssh
echo "ssh-rsa xxx..(省略)....xx Li-jianying@lijianyings-MacBook-Pro.local" > /root/.ssh/authorized_keys

rm -rf /var/lib/docker
ln -s /mnt/docker /var/lib/docker
#echo 'DOCKER_OPTS="--registry-mirror=http://XXXXX.m.daocloud.io"' >> /run/flannel_docker_opts.env
#systemctl daemon-reload
systemctl restart docker
# using disk

Importiere zuerst den RSA-Schlüssel, dann erstelle einen symbolischen Link zum Docker-Speicherort.

Füge daocloud-Beschleunigung hinzu (obwohl die offizielle Dokumentation nicht erwähnt, wie man CoreOS beschleunigt, hat ein Guru eine Methode bereitgestellt). Da ich feststelle, dass die Nichtverwendung der Beschleunigung schneller ist als die Verwendung, habe ich sie hier als Backup-Option auskommentiert.

systemd-Fallstricke

Wenn Docker den Fehler -1 zurückgibt, stürzt der Container ab. Der Scope existiert jedoch weiterhin in systemd.

Beim Starten des Problemcontainers wird Folgendes angezeigt:

Error response from daemon: Cannot start container test: [8] System error: Unit docker-e10eb86807cd9971fc03a8eee732771193d506ed2ba678fdf4292916a9fb072c.scope already exists.

Dann

systemctl stop docker-e10eb86807cd9971fc03a8eee732771193d506ed2ba678fdf4292916a9fb072c.scope

kannst du es beheben.

CoreOS.iso-Fallstrick #2

Verifiziert weiterhin KnowHosts.

Referenzlösunghttps://github.com/lijianying10/FixLinux/blob/master/note/CancelsshPublicKeyKnowHostauthentication.md

Zusammenfassung

Die Verwendung dieser Methode zum Bereitstellen von Linux auf einem PC ist wirklich praktisch. Wenn du mit dem Docker-Ansatz vertraut bist, kannst du es je nach deiner Situation in etwa 20 Minuten erledigen.
Nachdem ich auf diese Idee gekommen war, wog ich verschiedene Trade-offs ab.

  1. Um das Boot-Problem schnell zu lösen, verwenden Sie EasyBCD, um das ISO im Arbeitsspeicher direkt zu booten, anstatt sich mit UEFI-Grub-Problemen zu befassen.
  2. Um den Zeitaufwand für die Umgebungskonfiguration zu reduzieren, wechseln Sie von einer gewöhnlichen, auf der Festplatte installierten Distribution zu CoreOS.
  3. Um Systeminstabilität durch Fehlbedienungen oder Versions-Upgrades zu vermeiden, wechseln Sie zu Docker.
  4. In Zukunft vielleicht zu RKT, RunC wechseln (hoffentlich füllen die Experten die Lücken bald; RunC sagte, es werde diesen Monat veröffentlicht, nicht sicher, ob es sich verzögert).
  5. Beachten Sie, dass dieser Ansatz um jeden Preis die einfachste Umgebungskonfiguration verwendet, um Entwicklungszeit zu gewinnen. Perfektionisten, die gerne basteln, sollten sich wohl anderswo umsehen.

Quelle: http://www.philo.top/2015/07/16/pc-docker/