chouseknecht.minishift
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 ZeileDOCKER_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
Run OpenShift locally using minishift
ansible-galaxy install chouseknecht.minishift