chouseknecht.minishift

Build-Status

minishift-up-role

Installiert die neueste Version der minishift Binary und erstellt eine Minishift-Instanz.

Er führt die folgenden Aufgaben aus:

  • Lädt die neueste Minishift-Binary herunter und installiert sie
  • Kopiert die neueste OC-Binary von ~/.minishift/cache/oc in ein Verzeichnis in Ihrem PATH
  • Installiert den Docker Machine-Treiber
  • Erstellt eine Minishift-Instanz
  • Gewährt dem Developer-Konto Cluster-Admin-Rechte
  • Erstellt eine Route zum internen Registry
  • Fügt einen Hostnamen zu /etc/hosts hinzu, um auf das interne Registry zuzugreifen

Zugriff auf das Registry

Nachdem die Rolle ausgeführt wurde und Minishift läuft, können Sie auf das interne Registry mit dem Wert openshift_hostname zugreifen. Der Standardwert ist local.openshift. Zum Beispiel, um sich anzumelden, führen Sie Folgendes aus:

$ docker login -u developer -p $(oc whoami -t) https://local.openshift

Unterstützte Plattformen:

  • Debian
  • Red Hat
  • OSX

Voraussetzungen

  • Ansible 2.4+
  • Vor dem Ausführen der Rolle, löschen Sie alle DOCKER* Umgebungsvariablen in Ihrer Terminalsitzung.
  • Sudo-Zugriff ist erforderlich, um Pakete zu installieren

OSX

Mounten von /Users zur Minishift-VM

Wenn die Minishift-VM gestartet wird, wird das /Users-Verzeichnis in die VM gemountet. Dies geschieht, indem die Umgebungsvariable XHYVE_VIRTIO_9P=true gesetzt wird. Diese Variable wird vorübergehend während des Betriebs gesetzt.

Linux

  • KVM installiert und arbeitsfähig. Die Rolle installiert den Docker Machine-Treiber für KVM, setzt jedoch voraus, dass KVM bereits installiert und funktionsfähig ist.
  • Ansible 2.2+

Fedora

  • Installieren Sie die Pakete python2-dnf und libselinux-python.

Bekannte Probleme

Fedora

  • Bevor Sie auf den Docker-Daemon in der Minishift-Instanz zugreifen können, müssen Sie das Skript /etc/sysconfig/docker ändern, um zu verhindern, dass es die Umgebungsvariable DOCKER_CERT_PATH überschreibt. Bearbeiten Sie die Datei und ändern Sie die Zeile DOCKER_CERT_PATH=/etc/docker wie folgt:

    if [ -z "${DOCKER_CERT_PATH}" ]; then
        DOCKER_CERT_PATH=/etc/docker
    fi
    

Standardwerte

minishift_repo: minishift/minishift

Repository, wo die Minishift-Binary zu finden ist.

minishift_github_url: https://api.github.com/repos

URL für den Zugriff auf die GitHub-API.

minishift_release_tag_name: ""

Standardmäßig wird die neueste Version installiert. Verwenden Sie dies, um eine bestimmte Minishift-Version zu installieren.

minishift_dest: /usr/local/bin

Wo die Minishift-Binary installiert wird.

minishift_force_install: yes

Überschreibt jede vorhandene Minishift-Binary, die in {{ minishift_dest }} gefunden wird.

minishift_restart: yes

Stoppt und erstellt die vorhandene Minishift-Instanz neu.

minishift_delete: yes

Führt minishift delete aus und entfernt ~/.minishift. Wenn Sie ein Upgrade durchführen, möchten Sie dies höchstwahrscheinlich tun.

minishift_start_options: []

Geben Sie eine Liste von Optionen an, die an minishift start übergeben werden sollen. Zum Beispiel: ['--memory', '4GB', '--cpus', '4']

openshift_client_dest: /usr/local/bin

Wo die OpenShift-Client-Binary installiert wird.

openshift_force_client_copy: yes

Überschreibt jede vorhandene OpenShift-Client-Binary, die in {{ openshift_client_dest }} gefunden wird.

openshift_hostname: local.openshift

Der Hostname, den Sie verwenden, um auf das lokale Registry zuzugreifen, wenn Sie Bilder hochladen möchten. Wird zu /etc/hosts hinzugefügt.

Beispiel-Playbook

Unten finden Sie ein Beispiel-Playbook, das alle Standardparameter enthält. Sie finden dieses genaue Beispiel im Hauptverzeichnis des Projekts.

---
- name: Minishift installieren
  hosts: localhost
  connection: local
  gather_facts: yes
  roles:
    - role: chouseknecht.minishift
      minishift_repo: minishift/minishift 
      minishift_github_url: https://api.github.com/repos
      minishift_release_tag_name: ""
      minishift_dest: /usr/local/bin  
      minishift_force_install: yes
      minishift_restart: yes 
      minishift_delete: yes 
      minishift_start_options: []
      openshift_client_dest: /usr/local/bin
      openshift_force_client_copy: yes
      openshift_hostname: local.openshift

Nachdem Sie die Rolle installiert haben, kopieren Sie minishift-up.yml in Ihr Projektverzeichnis und führen Sie sie mit der Option --ask-become-pass aus. Zum Beispiel:

# Rolle installieren 
$ ansible-galaxy install chouseknecht.minishift-up-role

# Playbook von Ihrem Rollenpfad in das aktuelle Arbeitsverzeichnis kopieren 
$ cp ${ANSIBLE_ROLES_PATH}/chouseknecht.minishift-up-role/minishift-up.yml .

# Eine localhost-Inventory-Datei erstellen
$ echo "localhost">./inventory

# Playbook ausführen
$ ansible-playbook -i inventory --ask-become-pass minishift-up.yml

Abhängigkeiten

Keine

Lizenz

Apache v2

Autor

@chouseknecht

Über das Projekt

Run OpenShift locally using minishift

Installieren
ansible-galaxy install chouseknecht.minishift
Lizenz
apache-2.0
Downloads
365
Besitzer
Ansible Galaxy Engineering Manager