Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

Um auf beliebiger Maschine ein fbr zu übersetzten haben wir Docker Images im Program:

Vorraussetzungen:

  • ein svn checkout 
  • installiertes docker
  • ausreichend Speicherplatz auf dem Wirtsystem

Nomenklatur:

Damit es ein wenig einfacher wird zu identifizieren was auf dem Host und was im Image passieren soll ein wenig farbliche Unterscheidung:

  • alles was Rot ist wird auf dem Host erledigt bzw. befindet sich auf dem Host
  • alles was Grün ist wir im Docker gemacht bzw. befindet sich im Docker

HauZu oder wie bekomme ich den Container ans laufen:

Das Image hat die Möglichkeit Verzeichnisse aus dem Wirtsystem zu mounten/mappen. Das sind atm:

  • /data/shared/fli4l/.fbr
  • /data/work

Auf diese Verzeichnisse lassen sich dann Verzeichnisse aus dem Wirt mappen.

Im Image gibt es einen User Namens "developer", es empfiehlt sich diesen zu nutzen.

Anlegen und starten des Containers:

docker run --user="developer" --name fbr -v /home/schmetterling/.fbr:/data/shared/fli4l/.fbr -v /home/schmetterling/fli4l/svn/branches/4.0/trunk:/data/work -it nettworksevtooling/fli4l-buildroot-container:latest /bin/bash

hier ein wenig Erklärung zu dem Aufruf (fangen wir vorne an):

  • --user="developer" ist der oben erwähnte User im Container / Image
  • --name fbr ist der Name den der Container bekommt (kann auch anders heißen)
  • -v /home/schmetterling/.fbr:/data/shared/fli4l/.fbr ist das erste Mapping (alles vor dem Doppelpunkt ist der Pfad auf dem Wirt, danach der im Container)
  • -v /home/schmetterling/fli4l/svn/branches/4.0/trunk:/data/work das Zweite
  • -it nettworksevtooling/fli4lbuild root-container:latest ist das Image das von Dockerhub gezogen werden soll (das von uns erstellte)
  • /bin/bash was soll gemacht werden (hier hätten wir gerne eine Commandline)

Anmerkung zu den gemappten Verzeichnissen auf dem Host: das Dir wo das fbr hinterher liegen soll muß der User im Container Schreibrechte haben (ich habe 777 gewählt) und den anderen wo der checkout liegt wenigstens Leserechte!

Damit sollte dann nach kurzer Zeit der Container laufen...

Was noch zu tun ist:

man muß leider noch das .fbr Verzeichnis in das User Home linken:

cd ~
ln -s /data/shared/fli4l/.fbr .

danach sollte es /home/developer/.fbr geben.

FBR-Bau starten:

natürlich im Docker...

cd /data/work/src/packages/src/src/fbr
FBR_ARCH=x86_64 FBR_TIDY=n ./fbr-make world

damit baut es ein x86_64 FBR...

Das Ganze habe ich in einem screen laufen lassen, damit die Verbindung zum Host mal abreißen kann...

Jetzt braucht es nen Kaffee und ne Runde Geduld...


  • No labels