Στον σημερινό σύντομο οδηγό θα τρέξουμε macOS στο Linux χρησιμοποιώντας Docker με την βοήθεια του project Docker-OSX

Όσοι έχετε παρακολουθήσει τα «Μαθήματα Docker» που έχουμε δημοσιεύσει στο cerebrux, θα έχετε καταλάβει ποιες είναι οι δυνατότητές του Docker αλλά και των Containers. Επίσης στον οδηγό Εγκατάσταση macOS μέσα σε Linux μέσω KVM είδαμε πως μπορούμε να εγκαταστήσουμε το macOS μέσα σε εικονική μηχανή μέσω KVM στο Linux.

Αυτή την φορά, με την βοήθεια του project Docker-OSX θα συνδυάσουμε αυτά τα δύο, για να τρέξουμε το macOS σε ένα Docker container με X11 προώθηση για γραφικό περιβάλλον. Για να ακολουθήσετε τον παρακάτω οδηγό θεωρούμε ότι έχετε ήδη εγκατεστημένο το docker στο σύστημά σας όπως και το KVM και ότι έχετε ακολουθήσει τα μαθήματα που έχουμε δημοσιεύσει ή τουλάχιστον καταλαβαίνετε γιατί κάνουμε αυτό που κάνουμε.

Advertisements

Επιλογές από Docker images για macOS

Το Docker-OSX έχει ετοιμάσει 3 διαφορετικά image ανάλογα με τις ανάγκες μας:

  1. sickcodes/docker-osx:latest : Για πλήρη εμπειρία χρήσης του macOS
  2. sickcodes/docker-osx:naked : Headless περιβάλλον
  3. sickcodes/docker-osx:auto : Εκκίνηση μόνο στο τερματικό του macOS

Κάθε Docker-OSX image είναι χρήσιμο για συγκεκριμένες δουλειές και θα πρέπει να αποφασίσετε εσείς πιο σας βολεύει. Για τις ανάγκες του παρόντος οδηγού θα χρησιμοποιήσουμε το latest image.

Docker-OSX latest

Αυτό το image είναι προεγκατεστημένο macOS μεγέθους περίπου 17GB και απαιτεί άλλα 50GB ελεύθερο χώρο στον δίσκο σας. Επίσης αυτό το image ξεκινάει το container με :

  • ενεργό το SSH
  • username είναι user
  • password είναι alpine
  • auto-updates κλειστά

Το πρώτο που κάνουμε είναι να κατεβάσουμε το image:

docker pull sickcodes/docker-osx:latest

Αφού το κατεβάσουμε, ξεκινάμε ένα container :

docker run -it \
    --device /dev/kvm \
    --device /dev/snd \
    -p 50922:10022 \
    -v /tmp/.X11-unix:/tmp/.X11-unix \
    -e "DISPLAY=${DISPLAY:-:0.0}" \
    sickcodes/docker-osx:latest

Θα χρειαστεί να περιμένετε 2-3 λεπτά μέχρι να εμφανιστεί το logo.

Σε περίπτωση που χρειάζεστε:

  • Περισσότερες επιλογές ρυθμίσεων (π.χ. ρύθμιση RAM)
  • Διαφορετική διαρρύθμιση χρήσης του macOS
  • Βοήθεια στο trouble-shooting

τότε ρίξτε μια ματιά στο Github του project Docker-OSX όπου θα βρείτε αναλυτικές πληροφορίες για κάθε ειδική περίπτωση: