magicalyak.minishift_up
minishift-up
Installiert die neueste minishift Binary und erstellt eine minishift Instanz.
Folgende Aufgaben werden ausgeführt:
- Lädt die neueste minishift Binary herunter und installiert sie
- Kopiert die neueste oc Binary von ~/.minishift/cache/oc in ein Verzeichnis in deinem PATH
- Installiert den Docker Machine-Treiber
- Erstellt eine minishift Instanz
- Gewährt dem admin Konto Cluster-Administratorrechte
Zugriff auf das Registry
Nachdem das Skript ausgeführt wurde und minishift läuft, kannst du auf das interne Registry zugreifen, nachdem du den Befehl minishift docker-env eval
gesetzt hast:
eval $(minishift docker-env)
docker login -u developer -p $(oc whoami -t)
Unterstützte Plattformen
- Debian
- Red Hat
- OSX
Voraussetzungen
- Ansible 2.4+
- Vor dem Ausführen des Skripts, stelle sicher, dass keine DOCKER* Umgebungsvariablen im Terminal aktiv sind.
- sudo-Zugriff ist erforderlich, um Pakete zu installieren
- git (bei Verwendung von Community-Addons)
- gnu tar (brew install gnu-tar)
OSX
Das Verzeichnis /Users im Minishift VM einbinden
Wenn die Minishift VM gestartet wird, wird das Verzeichnis /Users im VM eingebunden. Dies geschieht durch das Setzen der Umgebungsvariable XHYVE_VIRTIO_9P=true
.
Linux
- KVM muss installiert und betriebsbereit sein. Das Skript installiert den Docker Machine-Treiber für KVM, setzt jedoch voraus, dass KVM bereits installiert und betriebsbereit ist.
- Ansible 2.4+
Fedora
- Installiere die Pakete python2-dnf und libselinux-python
Bekannte Probleme
Fedora
Bevor du auf den Docker-Daemon in der Minishift-Instanz zugreifst, musst du das Skript
/etc/sysconfig/docker
ändern, um zu verhindern, dass es die Umgebungsvariable DOCKER_CERT_PATH überschreibt. Bearbeite die Datei und ändere 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 zum Zugriff auf die GitHub-API.
minishift_release_tag_name: ""
Standardmäßig wird die neueste Version installiert. Verwende dies, um eine spezifische minishift-Version zu installieren.
minishift_dest: /usr/local/bin
Wo die minishift Binary installiert werden soll.
minishift_force_install: ja
Überschreibe jede vorhandene minishift Binary, die unter {{ minishift_dest }} gefunden wird.
minishift_restart: ja
Stoppe und erstelle die vorhandene minishift Instanz neu.
minishift_delete: ja
Führe
minishift delete
aus und entferne~/.minishift
. Wenn du ein Upgrade machst, möchtest du dies wahrscheinlich tun.
minishift_start_options: []
Gib 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 werden soll.
openshift_force_client_copy: ja
Überschreibe jede vorhandene OpenShift-Client-Binary, die unter {{ openshift_client_dest }} gefunden wird.
minishift_experimental: nein
Aktiviere experimentelle Funktionen
minishift_service_catalog: nein
Aktiviere den Service-Katalog-Komponenten
use_hyperkit: nein
Für macOS kannst du versuchen, hyperkit anstelle von xhyve zu verwenden, indem du dies auf ja setzt.
minishift_addons_enable: nein
Um Addons zu verwenden, setze dies auf ja.
minishift_addons_community_enable: nein
Um Community-Addons zu verwenden, setze dies auf ja und gib den Pfad an.
minishift_addons_community_path: $HOME/Downloads/git
Setze dies auf den Pfad der Community-Addons, die du installieren möchtest (muss existieren).
minishift_redhat_login: '123456|magicalyak' minishift_redhat_password: 'token_stuff_stuff_token'
Setze dies auf den Benutzernamen und das Passwort deines Red Hat Container Service-Kontos.
Beispiel-Playbook
Hier ist ein Beispiel-Playbook, das alle Standardparameter enthält. Du findest ein Beispiel davon im Stammverzeichnis des Projekts.
---
- name: Installiere minishift
hosts: localhost
connection: local
gather_facts: ja
roles:
- role: magicalyak.minishift_nginx
minishift_repo: minishift/minishift
minishift_github_url: https://api.github.com/repos
minishift_release_tag_name: ""
minishift_dest: /usr/local/bin
minishift_force_install: ja
minishift_restart: ja
minishift_delete: ja
minishift_start_options: []
openshift_client_dest: /usr/local/bin
openshift_force_client_copy: ja
minishift_experimental: nein
minishift_service_catalog: nein
use_hyperkit: ja
minishift_addons_enable: nein
minishift_addons:
anyuid: nein
registry_route: nein
admissions_webhook: nein
htpasswd_identity_provider: nein
xpaas: nein
redhat_registry_logon: nein
che: nein
prometheus: nein
admin_user: ja
minishift_addons_community_enable: nein
minishift_addons_community_path: $HOME/Downloads/git
minishift_addons_community:
ansible_service_broker: nein
dotnet: nein
example: nein
grafana: nein
helm: nein
istio: nein
management_infra: nein
workshop: nein
eap_cd: nein
Nachdem du das Skript installiert hast, kopiere minishift-nginx.yml in dein Projektverzeichnis und führe es mit der Option --ask-become-pass
aus. Zum Beispiel:
# Rolle installieren
$ ansible-galaxy install magicalyak.minishift_up
# Kopiere das Playbook von deinem Rollenpfad in das aktuelle Arbeitsverzeichnis
$ cp ${ANSIBLE_ROLES_PATH}/magicalyak.minishift_up/minishift-up.yml .
# Erstelle eine localhost Inventar-Datei
$ echo "localhost">./inventory
# Führe das Playbook aus
$ ansible-playbook -i inventory --ask-become-pass minishift-up.yml
Abhängigkeiten
git (bei Verwendung von Community-Addons)
gnu-tar (brew install gnu-tar)
Lizenz
Apache v2
Autor
Danksagungen
Ich habe das meiste davon von Chris Houseknechts Rolle minishift-up-role auf Ansible Galaxy übernommen.
@chouseknecht
ansible-galaxy install magicalyak.minishift_up