Das Einrichten einer neuen Entwicklermaschine kann ein Ad-hoc-, manueller und zeitaufwändiger Prozess sein. dev-setup
zielt darauf ab, den Prozess mit leicht verständlichen Anweisungen und Dotfiles/Skripten zu vereinfachen , um die Einrichtung der folgenden Dinge zu automatisieren :
dev-setup
ist eher darauf ausgerichtet, eine organisierte Referenz verschiedener Entwicklertools zu sein.
Es ist nicht Ihre Aufgabe, alles zu installieren.
Wenn Sie an Automatisierung interessiert sind, bietet dev-setup
ein anpassbares Setup-Skript. Es gibt wirklich keine Einheitslösung für Entwickler, wir empfehlen Ihnen daher, Anpassungen vorzunehmen, die Ihren Anforderungen entsprechen.
Credits: Dieses Repo baut auf der großartigen Arbeit von Mathias Bynens und Nicolas Hery auf.
Vagrant und Docker sind großartige Tools und werden von diesem Repo eingerichtet. Ich habe festgestellt, dass Vagrant gut funktioniert, um sicherzustellen, dass die Entwickler mit den Test- und Produktionsstufen übereinstimmen. Ich habe gerade erst angefangen, mit Docker für Nebenprojekte herumzuspielen, und es sieht sehr vielversprechend aus. Für Mac-Benutzer verlassen sich Docker und Vagrant jedoch beide auf virtuelle Maschinen , die ihre eigenen Überlegungen/Vor-/Nachteile haben.
Boxen ist eine coole Lösung, auch wenn einige vielleicht finden, dass sie besser auf „reifere Unternehmen oder Entwicklerteams“ zugeschnitten ist. Ich habe einige Diskussionen über Schwierigkeiten bei der Verwendung von Puppet unter der Haube gesehen.
Dieses Repo verfolgt einen leichteren Automatisierungsansatz und verwendet eine Kombination aus Homebrew, Homebrew Cask und Shell-Skripten für die grundlegende Systemeinrichtung. Es bietet außerdem leicht verständliche Anweisungen zur Installation, Konfiguration und Verwendung für jede Entwickler-App oder jedes Entwickler-Tool.
Skripte getestet unter OS X 10.10 Yosemite und 10.11 El Capitan.
~
$ git clone https://github.com/donnemartin/dev-setup.git && cd dev-setup
Da Sie wahrscheinlich nicht jeden Abschnitt installieren möchten , unterstützt das .dots
Skript Befehlszeilenargumente, um nur bestimmte Abschnitte auszuführen. Geben Sie einfach die Skripte ein, die Sie installieren möchten. Nachfolgend finden Sie einige Beispiele.
Für weitere Anpassungen können Sie das Repo klonen oder forken und das .dots
Skript und die zugehörigen Komponenten an Ihre Bedürfnisse anpassen.
Alles ausführen:
$ ./.dots all
Führen Sie bootstrap.sh
, osxprep.sh
, brew.sh
und osx.sh
aus:
$ ./.dots bootstrap osxprep brew osx
Führen Sie bootstrap.sh
, osxprep.sh
, brew.sh
und osx.sh
, pydata.sh
, aws.sh
und datastores.sh
aus:
$ ./.dots bootstrap osxprep brew osx pydata aws datastores
$ curl -O https://raw.githubusercontent.com/donnemartin/dev-setup/master/.dots && ./.dots [Add ARGS Here]
~
Hinweise:
.dots
fordert Sie zunächst zur Eingabe Ihres Passworts auf..dots
fordert Sie möglicherweise in bestimmten Phasen der Installation auf, Ihr Passwort erneut einzugeben..dots
OS.dots
führt brew.sh
aus, was eine Weile dauert, da einige Formeln aus der Quelle installiert werden müssen..dots
fertig ist, müssen Sie Ihren Computer unbedingt neu starten, damit alle Aktualisierungen wirksam werden.Ich empfehle Ihnen, Abschnitt 1 durchzulesen, damit Sie eine bessere Vorstellung davon bekommen, was jedes Installationsskript tut. In den folgenden Diskussionen wird ausführlicher beschrieben, was beim Ausführen des .dots-Skripts ausgeführt wird.
Das Skript bootstrap.sh
synchronisiert das Dev-Setup-Repository mit Ihrem lokalen Home-Verzeichnis. Dazu gehören Anpassungen für Vim, Bash, Curl, Git, Tab-Vervollständigung, Aliase, eine Reihe von Hilfsfunktionen usw. Abschnitt 2 dieses Repos beschreibt einige der Anpassungen.
Teilen oder klonen Sie zunächst das Repo. Das Skript bootstrap.sh
ruft die neueste Version ab und kopiert die Dateien in Ihren Home-Ordner ~
:
$ source bootstrap.sh
Um später zu aktualisieren, führen Sie diesen Befehl einfach erneut aus.
Alternativ zum Aktualisieren unter Umgehung der Bestätigungsaufforderung:
$ set -- -f; source bootstrap.sh
Um dev-setup ohne Git mit Ihrem lokalen Home-Verzeichnis zu synchronisieren, führen Sie Folgendes aus:
$ cd ~; curl -#L https://github.com/donnemartin/dev-setup/tarball/master | tar -xzv --strip-components 1 --exclude={README.md,bootstrap.sh,LICENSE}
Um später zu aktualisieren, führen Sie diesen Befehl einfach erneut aus.
Wenn ~/.path
vorhanden ist, wird es zusammen mit den anderen Dateien bezogen, bevor Funktionstests (z. B. Erkennen, welche Version von ls
verwendet wird) stattfinden.
Hier ist eine Beispieldatei ~/.path
, die /usr/local/bin
zum $PATH
hinzufügt:
export PATH= " /usr/local/bin: $PATH "
Wenn ~/.extra
vorhanden ist, wird es zusammen mit den anderen Dateien bezogen. Sie können damit einige benutzerdefinierte Befehle hinzufügen, ohne das gesamte Repository teilen zu müssen, oder um Befehle hinzuzufügen, die Sie nicht in ein öffentliches Repository übertragen möchten.
Mein ~/.extra
sieht ungefähr so aus:
# Git credentials
GIT_AUTHOR_NAME= " Donne Martin "
GIT_COMMITTER_NAME= " $GIT_AUTHOR_NAME "
git config --global user.name " $GIT_AUTHOR_NAME "
GIT_AUTHOR_EMAIL= " [email protected] "
GIT_COMMITTER_EMAIL= " $GIT_AUTHOR_EMAIL "
git config --global user.email " $GIT_AUTHOR_EMAIL "
# Pip should only run if there is a virtualenv currently activated
export PIP_REQUIRE_VIRTUALENV=true
# Install or upgrade a global package
# Usage: gpip install –upgrade pip setuptools virtualenv
gpip (){
PIP_REQUIRE_VIRTUALENV= " " pip " $@ "
}
Sie könnten ~/.extra
auch verwenden, um Einstellungen, Funktionen und Aliase aus dem Dev-Setup-Repository zu überschreiben, obwohl es wahrscheinlich besser ist, das Dev-Setup-Repository zu forken.
Führen Sie das Skript osxprep.sh
aus:
$ ./osxprep.sh
osxprep.sh
installiert zunächst alle Updates. Wenn ein Neustart erforderlich ist, führen Sie das Skript einfach erneut aus. Sobald alle Updates installiert sind, installiert osxprep.sh
die Xcode-Befehlszeilentools.
Wenn Sie den manuellen Weg gehen möchten, können Sie alle Updates auch installieren, indem Sie „App Store“ ausführen, das Symbol „Updates“ auswählen und dann sowohl das Betriebssystem als auch die installierten Apps aktualisieren.
Eine wichtige Abhängigkeit, bevor viele Tools wie Homebrew funktionieren können, sind die Befehlszeilentools für Xcode . Dazu gehören Compiler wie gcc, mit denen Sie aus dem Quellcode erstellen können.
Wenn Sie OS X 10.9 Mavericks oder höher ausführen, können Sie die Xcode-Befehlszeilentools direkt über die Befehlszeile installieren mit:
$ xcode-select --install
Hinweis : Das Skript osxprep.sh
führt diesen Befehl aus.
Wenn Sie den obigen Befehl ausführen, wird ein Dialogfeld angezeigt, in dem Sie entweder:
Wenn Sie 10.8 oder älter verwenden, müssen Sie zu http://developer.apple.com/downloads gehen und sich mit Ihrer Apple-ID anmelden (die gleiche, die Sie für iTunes und App-Käufe verwenden). Leider erwartet Sie ein ziemlich nerviger Fragebogen. Alle Fragen sind erforderlich, Sie können also gerne nach dem Zufallsprinzip antworten.
Sobald Sie die Download-Seite erreicht haben, suchen Sie nach „Befehlszeilentools“ und laden Sie die neuesten Befehlszeilentools (OS X Mountain Lion) für Xcode herunter. Öffnen Sie die .dmg- Datei, sobald der Download abgeschlossen ist, und doppelklicken Sie auf das .mpkg -Installationsprogramm, um die Installation zu starten. Wenn es fertig ist, können Sie die Festplatte im Finder aushängen.
Wenn Sie einen neuen Mac einrichten, möchten Sie möglicherweise Homebrew installieren, einen Paketmanager, der die Installation und Aktualisierung von Anwendungen oder Bibliotheken vereinfacht.
Zu den vom brew.sh
Skript installierten Apps gehören unter anderem: Chrome, Firefox, Sublime Text, Atom, Dropbox, Evernote, Skype, Slack, Alfred, VirtualBox, Vagrant, Docker usw. Eine vollständige Liste der installierten Formeln und Apps finden Sie unter Verweisen Sie direkt auf die kommentierte Quelldatei brew.sh und passen Sie sie an Ihre Bedürfnisse an.
Führen Sie das brew.sh
-Skript aus:
$ ./brew.sh
Die Fertigstellung des brew.sh
-Skripts dauert eine Weile, da einige Formeln aus der Quelle installiert werden müssen.
Damit Ihre Terminalanpassung ihre volle Wirkung entfaltet, beenden Sie das Terminal und starten Sie es neu
Wenn Sie einen neuen Mac einrichten, möchten Sie möglicherweise OS X-Standardeinstellungen festlegen, die auf Entwickler zugeschnitten sind. Das Skript osx.sh
konfiguriert auch gängige Apps von Drittanbietern wie Sublime Text und Chrome.
Hinweis : Ich empfehle Ihnen dringend, die kommentierte Quelldatei osx.sh durchzulesen und alle Einstellungen entsprechend Ihren persönlichen Vorlieben anzupassen. Die Skriptstandards können von Ihnen angepasst werden. Wenn Sie beispielsweise keine SSD verwenden, möchten Sie möglicherweise einige der im Abschnitt „SSD“ aufgeführten Einstellungen ändern.
Führen Sie das Skript osx.sh
aus:
$ ./osx.sh
Damit Ihre Terminalanpassung ihre volle Wirkung entfaltet, beenden Sie das Terminal und starten Sie es neu.
Um eine Entwicklungsumgebung für die Arbeit mit Python und Datenanalyse einzurichten, ohne auf die schwerere Anaconda-Distribution angewiesen zu sein, führen Sie das Skript pydata.sh
aus:
$ ./pydata.sh
Dadurch werden Virtualenv und Virtualenvwrapper installiert. Anschließend werden zwei virtuelle Umgebungen eingerichtet, die mit den Paketen geladen sind, die Sie für die Arbeit mit Daten in Python 2 und Python 3 benötigen.
Um zur virtuellen Python 2-Umgebung zu wechseln, führen Sie den folgenden Virtualenvwrapper-Befehl aus:
$ workon py2-data
Um zur virtuellen Python 3-Umgebung zu wechseln, führen Sie den folgenden Virtualenvwrapper-Befehl aus:
$ workon py3-data
Beginnen Sie dann mit der Arbeit mit den installierten Paketen, zum Beispiel:
$ ipython notebook
Abschnitt 3: Python-Datenanalyse beschreibt die installierten Pakete und deren Verwendung.
Um eine Entwicklungsumgebung für die Arbeit mit Spark, Hadoop MapReduce und Amazon Web Services einzurichten, führen Sie das Skript aws.sh
aus:
$ ./aws.sh
Abschnitt 4: Big Data, AWS und Heroku beschreibt die installierten Pakete und deren Verwendung.
Um gemeinsame Datenspeicher einzurichten, führen Sie das Skript datastores.sh
aus:
$ ./datastores.sh
Abschnitt 5: Datenspeicher beschreibt die installierten Pakete und deren Verwendung.
Um eine JavaScript-Webentwicklungsumgebung einzurichten, führen Sie das Skript web.sh
aus:
$ ./web.sh
Abschnitt 6: Webentwicklung beschreibt die installierten Pakete und deren Verwendung.
Um eine Android-Entwicklungsumgebung einzurichten, führen Sie das Skript android.sh
aus:
$ ./android.sh
Abschnitt 7: Android-Entwicklung beschreibt die installierten Pakete und deren Verwendung.
Neben dem Terminal ist der Texteditor das wichtigste Werkzeug eines Entwicklers. Jeder hat seine Vorlieben, aber wenn Sie kein eingefleischter Vim-Benutzer sind, werden Ihnen viele Leute sagen, dass Sublime Text derzeit das beste Programm auf dem Markt ist.
Das brew.sh-Skript installiert Sublime Text.
Wenn Sie es lieber separat installieren möchten, laden Sie es herunter. Öffnen Sie die .dmg- Datei und ziehen Sie sie per Drag-and-Drop in den Anwendungsordner .
Hinweis : An dieser Stelle werde ich für Sublime Text eine Verknüpfung im OS X Dock für beide erstellen. Klicken Sie dazu mit der rechten Maustaste auf die laufende Anwendung und wählen Sie Optionen > Im Dock behalten .
Sublime Text ist nicht kostenlos, aber ich denke, es hat einen unbegrenzten „Evaluierungszeitraum“. Wie auch immer, wir werden es so oft nutzen, dass selbst der scheinbar teure Preis von 70 $ jeden Cent wert ist. Wenn Sie es sich leisten können, empfehle ich Ihnen, dieses großartige Tool zu unterstützen.
Das Skript osx.sh enthält Sublime Text-Konfigurationen.
Das Soda-Theme ist ein großartiges UI-Theme für Sublime Text, insbesondere wenn Sie ein dunkles Theme verwenden und denken, dass die Seitenleiste wie ein schmerzender Daumen hervorsteht.
Wenn Sie Will Bonds hervorragende Sublime Package Control verwenden, können Sie Soda Theme ganz einfach über den Menüpunkt Package Control: Install Package
installieren. Das Soda Theme-Paket wird in der Paketliste als Theme - Soda
aufgeführt.
Alternativ können Sie als Git-Benutzer das Theme installieren und auf dem neuesten Stand bleiben, indem Sie das Repo direkt in Ihr Packages
im Sublime Text-Anwendungseinstellungsbereich klonen.
Sie können Ihr Sublime Text Packages
-Verzeichnis finden, indem Sie den Menüpunkt Preferences -> Browse Packages...
verwenden.
Klonen Sie im Packages
das Theme-Repository mit dem folgenden Befehl:
$ git clone https://github.com/buymeasoda/soda-theme/ "Theme - Soda"
Sublime Text 2 -> Preferences -> Settings - User
"theme": "Soda Light.sublime-theme"
oder "theme": "Soda Dark.sublime-theme"
ein.Beispiel für Sublime Text 2-Benutzereinstellungen
{
"theme": "Soda Light.sublime-theme"
}
Sublime Text -> Preferences -> Settings - User
"theme": "Soda Light 3.sublime-theme"
oder "theme": "Soda Dark 3.sublime-theme"
ein.Beispiel für Sublime Text 3-Benutzereinstellungen
{
"theme": "Soda Light 3.sublime-theme"
}
Obwohl Monokai ein tolles Farbschema ist, finde ich, dass Kommentare schwer zu erkennen sein können. Sie können diesen Anweisungen folgen, um die Farbe des Standarddesigns zu ändern.
Ich habe die Farbe meiner Kommentare auf #E6DB74
eingestellt.
...
foreground
#E6DB74
...
Atom ist ein großartiger Open-Source-Editor von GitHub, der schnell an Mitwirkenden und Popularität gewinnt.
Das brew.sh-Skript installiert Atom.
Wenn Sie es lieber separat installieren möchten, laden Sie es herunter, öffnen Sie die .dmg- Datei und ziehen Sie sie per Drag-and-Drop in den Anwendungsordner .
Atom verfügt über einen großartigen Paketmanager, mit dem Sie sowohl Kern- als auch Community-Pakete einfach installieren können.
Da wir so viel Zeit im Terminal verbringen, sollten wir versuchen, den Ort angenehmer und farbenfroher zu gestalten.
Die Skripte „bootstrap.sh“ und „osx.sh“ enthalten Terminalanpassungen.
Ich bevorzuge iTerm2 gegenüber dem Standard-Terminal, da es einige zusätzliche tolle Funktionen bietet. Laden Sie iTerm2 herunter und installieren Sie es (die neueste Version, auch wenn dort „Beta-Version“ steht).
Ziehen Sie im Finder die iTerm-Anwendungsdatei per Drag & Drop in den Anwendungsordner.
Sie können iTerm jetzt beispielsweise über das Launchpad starten.
Lassen Sie uns einfach schnell einige Einstellungen ändern. Erstellen Sie in iTerm > Einstellungen... auf der Registerkarte Profile ein neues Profil mit dem „+“-Symbol und benennen Sie es beispielsweise in Ihren Vornamen um. Wählen Sie dann Andere Aktionen... > Als Standard festlegen aus. Ändern Sie im Abschnitt „Fenster“ die Größe auf etwas Besseres, etwa „Spalten: 125“ und „Zeilen: 35“. Ich möchte auch „Allgemein“ > „Arbeitsverzeichnis“ > „Verzeichnis der vorherigen Sitzung wiederverwenden“ festlegen. Schließlich ändere ich die Funktionsweise der Optionstaste, damit ich wie hier beschrieben schnell zwischen Wörtern wechseln kann.
Wenn Sie fertig sind, klicken Sie oben links auf das rote „X“ (das Speichern erfolgt automatisch in den OS X-Einstellungsfenstern). Schließen Sie das Fenster und öffnen Sie ein neues, um die Größenänderung zu sehen.
Da wir so viel Zeit im Terminal verbringen, sollten wir versuchen, den Ort angenehmer und farbenfroher zu gestalten. Was folgt, scheint viel Arbeit zu sein, aber glauben Sie mir, es wird die Entwicklungserfahrung viel besser machen.
Jetzt fügen wir etwas Farbe hinzu. Ich bin ein großer Fan des Solarized-Farbschemas. Es soll wissenschaftlich optimal für die Augen sein. Ich finde es einfach hübsch.
An dieser Stelle können Sie auch den Namen Ihres Computers ändern, der in dieser Terminal-Eingabeaufforderung angezeigt wird. Wenn Sie dies tun möchten, gehen Sie zu Systemeinstellungen > Freigabe . Ich habe zum Beispiel meins von „Donne's MacBook Pro“ in „MacBook Pro“ geändert, sodass es im Terminal als MacBook-Pro
angezeigt wird.
Jetzt haben wir ein Terminal, mit dem wir arbeiten können!
Obwohl Sublime Text unser Haupteditor sein wird, ist es eine gute Idee, einige grundlegende Verwendungsmöglichkeiten von Vim zu erlernen. Es ist ein sehr beliebter Texteditor im Terminal und normalerweise auf jedem Unix-System vorinstalliert.
Wenn Sie beispielsweise einen Git-Commit ausführen, wird Vim geöffnet, sodass Sie die Commit-Nachricht eingeben können.
Ich empfehle Ihnen, ein Tutorial zu Vim zu lesen. Das Konzept der beiden „Modi“ des Editors, Einfügen (durch Drücken von i
) und Normal (durch Drücken von Esc
zum Beenden des Einfügemodus) zu verstehen, wird sich am unnatürlichsten anfühlen. Danach müssen Sie sich nur noch ein paar wichtige Schlüssel merken.
Das Skript „bootstrap.sh“ enthält Vim-Anpassungen.
VirtualBox erstellt und verwaltet virtuelle Maschinen. Es handelt sich um eine solide kostenlose Lösung zum kommerziellen Konkurrenten VMware.
Das brew.sh-Skript installiert VirtualBox
Wenn Sie es lieber separat installieren möchten, können Sie es hier herunterladen oder ausführen:
$ brew update
$ brew install caskroom/cask/brew-cask
$ brew cask install --appdir="/Applications" virtualbox
Vagrant erstellt und konfiguriert Entwicklungsumgebungen. Sie können es sich als einen übergeordneten Wrapper für VirtualBox und Konfigurationsverwaltungstools wie Ansible, Chef, Puppet und Salt vorstellen. Vagrant unterstützt auch Docker-Container und Serverumgebungen wie Amazon EC2.
Das Skript brew.sh installiert Vagrant.
Wenn Sie es lieber separat installieren möchten, können Sie es hier herunterladen oder ausführen:
$ brew update
$ brew install caskroom/cask/brew-cask
$ brew cask install --appdir="/Applications" vagrant
Docker automatisiert die Bereitstellung von Anwendungen in Softwarecontainern. Ich denke, das folgende Zitat erklärt Docker gut: „Docker ist ein Tool, das eine Anwendung und ihre Abhängigkeiten in einen virtuellen Container packen kann, der auf jedem Linux-Server ausgeführt werden kann. Dies trägt dazu bei, Flexibilität und Portabilität zu ermöglichen, wo die Anwendung ausgeführt werden kann, sei es vor Ort.“ , öffentliche Cloud, private Cloud, Bare Metal usw.
Das Skript brew.sh installiert Docker.
Wenn Sie es lieber separat installieren möchten, können Sie es hier herunterladen oder ausführen:
$ brew update
$ brew install docker
$ brew install boot2docker
boot2docker
initialisieren und starten (muss nur einmal durchgeführt werden):
$ boot2docker init
Starten Sie die VM:
$ boot2docker up
Legen Sie die Umgebungsvariable DOCKER_HOST
fest und geben Sie IP und PORT basierend auf der Ausgabe des Befehls boot2coker up
ein:
$ export DOCKER_HOST=tcp://IP:PORT
Was wäre ein Entwickler ohne Git?
Git sollte installiert sein, als Sie den Abschnitt „Xcode-Befehlszeilentools installieren“ durchgearbeitet haben.
Um Ihre Git-Version zu überprüfen, führen Sie den folgenden Befehl aus:
$ git --version
Und $ which git
soll /usr/local/bin/git
ausgeben.
Lassen Sie uns einige Grundkonfigurationen einrichten. Laden Sie die .gitconfig-Datei in Ihr Home-Verzeichnis herunter:
$ cd ~
$ curl -O https://raw.githubusercontent.com/donnemartin/dev-setup/master/.gitconfig
Es wird den Git-Befehlen status
, branch
und diff
sowie einigen Aliasen etwas Farbe verleihen. Werfen Sie gerne einen Blick auf den Inhalt der Datei und ergänzen Sie ihn nach Ihren Wünschen.
Als Nächstes definieren wir Ihren Git-Benutzer (sollte derselbe Name und die gleiche E-Mail-Adresse sein, die Sie für GitHub und Heroku verwenden):
$ git config --global user.name "Your Name Here"
$ git config --global user.email "[email protected]"
Sie werden Ihrer .gitconfig
Datei hinzugefügt.
Um Code in Ihre GitHub-Repositorys zu übertragen, verwenden wir die empfohlene HTTPS-Methode (im Gegensatz zu SSH). Damit Sie nicht jedes Mal Ihren Benutzernamen und Ihr Passwort eingeben müssen, aktivieren wir das Git-Passwort-Caching wie hier beschrieben:
$ git config --global credential.helper osxkeychain
Hinweis : Auf einem Mac ist es wichtig, daran zu denken, .DS_Store
(eine versteckte OS X-Systemdatei, die in Ordnern abgelegt wird) zu Ihren .gitignore
Dateien hinzuzufügen. Zur Inspiration können Sie einen Blick auf die .gitignore-Datei dieses Repositorys werfen. Schauen Sie sich auch GitHubs Sammlung von .gitignore-Vorlagen an.
Paketmanager erleichtern die Installation und Aktualisierung von Anwendungen (für Betriebssysteme) oder Bibliotheken (für Programmiersprachen) erheblich. Das beliebteste für OS X ist Homebrew.
Das Skript brew.sh installiert Homebrew und eine Reihe nützlicher Homebrew-Formeln und Apps.
Wenn Sie es lieber separat installieren möchten, führen Sie den folgenden Befehl aus und befolgen Sie die Schritte auf dem Bildschirm:
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Um ein Paket (oder eine Formel im Homebrew-Vokabular) zu installieren, geben Sie einfach Folgendes ein:
$ brew install
Um das Formelverzeichnis von Homebrew zu aktualisieren, führen Sie Folgendes aus:
$ brew update
Hinweis : Ich habe gesehen, dass dieser Befehl manchmal aufgrund eines Fehlers fehlschlug. Sollte das jemals passieren, führen Sie Folgendes aus (wenn Sie Git installiert haben):
$ cd /usr/local
$ git fetch origin
$ git reset --hard origin/master
So sehen Sie, ob eines Ihrer Pakete aktualisiert werden muss:
$ brew outdated
So aktualisieren Sie ein Paket:
$ brew upgrade
Homebrew behält ältere Versionen von Paketen installiert, falls Sie ein Rollback durchführen möchten. Das ist selten notwendig, daher können Sie einige Aufräumarbeiten durchführen, um diese alten Versionen loszuwerden:
$ brew cleanup
So sehen Sie, was Sie installiert haben (mit ihren Versionsnummern):
$ brew list --versions
Auf Unix-Systemen ist Ruby bereits installiert, aber wir wollen mit dieser Installation nicht herumspielen. Noch wichtiger ist, dass wir die neueste Version von Ruby verwenden möchten.
brew.sh
bietet rbenv und ruby-build, mit denen Sie mehrere Ruby-Versionen auf demselben Computer verwalten können. brew.sh
fügt Ihrer .extra
Datei die folgende Zeile hinzu, um rbenv
zu initialisieren:
eval "$(rbenv init -)"
rbenv
verwendet ruby-build
um neue Versionen von Ruby herunterzuladen, zu kompilieren und zu installieren. Sie können alle Versionen sehen, die zum Herunterladen und Installieren verfügbar sind:
$ ruby-build --definitions
So installieren Sie eine neue Version von Ruby:
# list all available versions installed on the system:
$ rbenv install -l
# install a Ruby version:
$ rbenv install 2.2.3
So wechseln Sie die Ruby-Version:
# set a local application-specific Ruby version in the current directory
$ rbenv local 1.9.3
# set the global version of Ruby to be used in all shells
$ rbenv global 2.0.0
rbenv
installiert Ruby-Versionen standardmäßig in einem gleichnamigen Verzeichnis unter ~/.rbenv/versions
. Da Ihr Benutzer Eigentümer dieses Verzeichnisses ist, müssen Sie sudo
nicht mehr zum Installieren von Gems verwenden.
OS X wird wie Linux mit bereits installiertem Python ausgeliefert. Aber Sie möchten sich nicht mit dem System-Python herumschlagen (einige System-Tools basieren darauf usw.), also installieren wir unsere eigene Version mit Homebrew. Dadurch erhalten wir auch die allerneueste Version von Python 2.7 und Python 3.
Das brew.sh-Skript installiert die neuesten Versionen von Python 2 und Python 3.
Pip ist der Python-Paketmanager.
Das Skript pydata.sh installiert pip.
Hier sind ein paar Pip-Befehle, die Ihnen den Einstieg erleichtern sollen. So installieren Sie ein Python-Paket:
$ pip install
So aktualisieren Sie ein Paket:
$ pip install --upgrade
So sehen Sie, was installiert ist:
$ pip freeze
So deinstallieren Sie ein Paket:
$ pip uninstall
Virtualenv ist ein Tool, das für jedes Ihrer Projekte eine isolierte Python-Umgebung erstellt. Für ein bestimmtes Projekt ist es am besten, die erforderlichen Pakete nicht global zu installieren, sondern sie in einem isolierten Ordner im Projekt zu installieren (z. B. einem Ordner namens venv
), der von virtualenv verwaltet wird.
Der Vorteil besteht darin, dass verschiedene Projekte möglicherweise unterschiedliche Versionen von Paketen erfordern, und es wäre schwierig, dies zu verwalten, wenn Sie Pakete global installieren. Außerdem können Sie damit Ihren globalen Ordner /usr/local/lib/python2.7/site-packages
sauber halten.
Das Skript pydata.sh installiert Virtualenv.
Nehmen wir an, Sie haben ein Projekt in einem Verzeichnis namens myproject
. So richten Sie Virtualenv für dieses Projekt ein:
$ cd myproject/
$ virtualenv venv --distribute
Wenn Sie möchten, dass Ihre virtuelle Umgebung auch global installierte Pakete (wie oben erwähntes IPython oder Numpy) erbt, verwenden Sie:
$ virtualenv venv --distribute --system-site-packages
Diese Befehle erstellen ein venv
Unterverzeichnis in Ihrem Projekt, in dem alles installiert wird. Sie müssen es jedoch zuerst aktivieren (in jedem Terminal, in dem Sie an Ihrem Projekt arbeiten):
$ source venv/bin/activate
Am Anfang Ihrer Terminal-Eingabeaufforderung sollte ein (venv)
angezeigt werden, das anzeigt, dass Sie in der virtuellen Umgebung arbeiten. Wenn Sie jetzt etwas installieren:
$ pip install
Es wird im venv
-Ordner installiert und steht nicht in Konflikt mit anderen Projekten.
Wichtig : Denken Sie daran, venv
zur .gitignore
Datei Ihres Projekts hinzuzufügen, damit Sie nicht alles in Ihren Quellcode aufnehmen!
Virtualenvwrapper ist eine Reihe von Erweiterungen, die Wrapper zum Erstellen und Löschen virtueller Umgebungen und zur anderweitigen Verwaltung Ihres Entwicklungsworkflows enthalten, wodurch es einfacher wird, an mehr als einem Projekt gleichzeitig zu arbeiten, ohne dass es zu Konflikten in deren Abhängigkeiten kommt.
Zu den Hauptmerkmalen gehören:
Das Skript pydata.sh installiert Virtualenvwrapper.
Erstellen Sie eine neue virtuelle Umgebung. Wenn Sie eine neue Umgebung erstellen, wird diese automatisch zur aktiven Umgebung:
$ mkvirtualenv [env name]
Entfernen Sie eine vorhandene virtuelle Umgebung. Die Umgebung muss deaktiviert werden (siehe unten), bevor sie entfernt werden kann:
$ rmvirtualenv [env name]
Aktivieren Sie eine virtuelle Umgebung. Listet auch alle vorhandenen virtuellen Umgebungen auf, wenn kein Argument übergeben wird:
$ workon [env name]
Deaktivieren Sie die derzeit aktive virtuelle Umgebung. Beachten Sie, dass workon die aktuelle Umgebung automatisch deaktiviert, bevor eine neue aktiviert wird:
$ deactivate
Anaconda ist eine kostenlose Distribution der Programmiersprache Python für umfangreiche Datenverarbeitung, prädiktive Analysen und wissenschaftliches Rechnen, die darauf abzielt, die Paketverwaltung und -bereitstellung zu vereinfachen.
Das Skript pydata.sh installiert Pakete, die Sie zum Ausführen von Python-Datenanwendungen benötigen. Alternativ können Sie stattdessen auch die schwerere Anaconda einbauen.
Befolgen Sie die Anweisungen, um Anaconda oder die leichtere Miniconda zu installieren.
IPython ist ein großartiges Projekt, das eine viel bessere Python-Shell bietet als die, die Sie erhalten, wenn Sie $ python
in der Befehlszeile ausführen. Es verfügt über viele coole Funktionen (Ausführen von Unix-Befehlen über die Python-Shell, einfaches Kopieren und Einfügen, Inline-Erstellung von Matplotlib-Diagrammen usw.), und ich werde Sie auf die Dokumentation verweisen, um sie zu entdecken.
IPython Notebook ist eine webbasierte interaktive Rechenumgebung, in der Sie Codeausführung, Text, Mathematik, Diagramme und Rich Media in einem einzigen Dokument kombinieren können.
Das Skript pydata.sh installiert IPython Notebook. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install "ipython[notebook]"
Wenn Sie auf ein Problem mit pyzmq stoßen, lesen Sie den folgenden Stack Overflow-Beitrag und führen Sie ihn aus:
$ pip uninstall ipython
$ pip install "ipython[all]"
$ ipython notebook
Wenn Sie einige Beispiele sehen möchten, finden Sie hier einige meiner Repos, die IPython-Notebooks stark nutzen:
NumPy bietet Python-Unterstützung für große, mehrdimensionale Arrays und Matrizen sowie eine große Bibliothek hochrangiger mathematischer Funktionen zur Bearbeitung dieser Arrays.
Das Skript pydata.sh installiert NumPy. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install numpy
Weitere Informationen finden Sie im folgenden Numpy IPython-Notizbuch.
Pandas ist eine Softwarebibliothek, die für die Datenbearbeitung und -analyse in Python geschrieben wurde. Bietet Datenstrukturen und Operationen zur Bearbeitung numerischer Tabellen und Zeitreihen.
Das Skript pydata.sh installiert Pandas. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install pandas
Weitere Informationen finden Sie in den folgenden Pandas IPython-Notebooks.
Matplotlib ist eine Python-2D-Plot-Bibliothek, die Abbildungen in Publikationsqualität in verschiedenen Papierformaten und interaktiven Umgebungen auf allen Plattformen erstellt.
Das Skript pydata.sh installiert matplotlib. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install matplotlib
Weitere Informationen finden Sie in den folgenden Matplotlib-IPython-Notebooks.
Seaborn ist eine Python-Visualisierungsbibliothek, die auf Matplotlib basiert. Es bietet eine High-Level-Schnittstelle zum Zeichnen attraktiver statistischer Grafiken.
Das Skript pydata.sh installiert matplotlib. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install seaborn
Weitere Informationen finden Sie in der folgenden Matplotlib mit Seaborn IPython Notebooks.
Scikit-learn bietet Python-Unterstützung für große, mehrdimensionale Arrays und Matrizen sowie eine große Bibliothek hochrangiger mathematischer Funktionen zur Bearbeitung dieser Arrays.
Das Skript pydata.sh installiert Scikit-learn. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install scikit-learn
Weitere Informationen finden Sie in den folgenden Scikit-Learn-IPython-Notebooks.
SciPy ist eine Sammlung mathematischer Algorithmen und praktischer Funktionen, die auf der Numpy-Erweiterung von Python basieren. Es erweitert die interaktive Python-Sitzung erheblich, indem es dem Benutzer Befehle und Klassen auf hoher Ebene zur Bearbeitung und Visualisierung von Daten bereitstellt.
Das Skript pydata.sh installiert SciPy. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install scipy
Weitere Informationen finden Sie in den folgenden SciPy IPython-Notebooks.
Flask ist ein in Python geschriebenes Mikro-Webanwendungs-Framework.
Das Skript pydata.sh installiert SciPy. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install Flask
[In Kürze erhältlich] Weitere Informationen finden Sie in den folgenden Flask IPython-Notizbüchern.
Bokeh ist eine interaktive Python-Visualisierungsbibliothek, die sich für die Präsentation an moderne Webbrowser richtet. Sein Ziel besteht darin, eine elegante, prägnante Konstruktion neuartiger Grafiken im Stil von D3.js bereitzustellen, diese Funktion aber auch mit leistungsstarker Interaktivität über sehr große oder Streaming-Datensätze bereitzustellen. Bokeh kann jedem helfen, der schnell und einfach interaktive Diagramme, Dashboards und Datenanwendungen erstellen möchte.
Das Skript pydata.sh installiert Bokeh. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install bokeh
[In Kürze erhältlich] Weitere Informationen finden Sie in den folgenden Bokeh IPython-Notizbüchern.
Spark ist ein In-Memory-Cluster-Computing-Framework, das für bestimmte Anwendungen bis zu 100-mal schneller ist und sich gut für Algorithmen des maschinellen Lernens eignet.
Das aws.sh-Skript installiert Spark lokal. Es verbindet Spark auch mit dem IPython-Notebook, indem es Ihr .bash_profile
konfiguriert und das Repository profile_pyspark/
zu .ipython
hinzufügt.
Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ brew install apache-spark
Führen Sie Spark lokal aus:
$ pyspark
Führen Sie Spark in IPython Notebook aus:
$ ipython notebook --profile=pyspark
Weitere Informationen finden Sie im folgenden Spark IPython-Notizbuch.
Spark wird auch auf AWS Elastic MapReduce unterstützt, wie hier beschrieben. Um einen Cluster zu erstellen, führen Sie den folgenden Befehl mit der AWS CLI aus und ersetzen Sie myKeyPair
durch den Namen Ihres Schlüsselpaars, um eine SSH-Verbindung zu Ihrem Cluster herzustellen:
$ aws emr create-cluster --name "Spark cluster" --ami-version 3.8 --applications Name=Spark --ec2-attributes KeyName=myKeyPair --instance-type m3.xlarge --instance-count 3 --use-default-roles
Mrjob unterstützt MapReduce-Jobs in Python und führt sie lokal oder auf Hadoop-Clustern wie AWS Elastic MapReduce (EMR) aus.
Mrjob ist nur Python 2.
Das aws.sh-Skript installiert mrjob lokal. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install mrjob
Das aws.sh-Skript synchronisiert auch die Vorlagendatei .mrjob.conf
mit Ihrem Home-Ordner. Beachten Sie, dass durch die Ausführung des aws.sh-Skripts alle vorhandenen ~/.mrjob.conf
Dateien überschrieben werden. Aktualisieren Sie die Konfigurationsdatei mit Ihren Anmeldeinformationen, Ihrem Schlüsselpaar, Ihrer Region und den S3-Bucket-Pfaden:
runners:
emr:
aws_access_key_id: YOURACCESSKEY
aws_secret_access_key: YOURSECRETKEY
aws_region: us-east-1
ec2_key_pair: YOURKEYPAIR
ec2_key_pair_file: ~/.ssh/YOURKEYPAIR.pem
...
s3_scratch_uri: s3://YOURBUCKETSCRATCH
s3_log_uri: s3://YOURBUCKETLOG
...
Weitere Informationen finden Sie im folgenden IPython-Notizbuch von mrjob.
Awesome AWS ist eine kuratierte Liste großartiger AWS-Bibliotheken, Open-Source-Repos, Leitfäden, Blogs und anderer Ressourcen. Dies ist eine großartige Möglichkeit, über die verschiedenen von der AWS unterstützten und von der Community geleiteten Initiativen für AWS auf dem Laufenden zu bleiben.
„Hot“-Repos in Awesome AWS werden anhand ihrer Beliebtheit visuell gekennzeichnet:
Repos, die nicht auf The Fiery Meter of AWSome
sind, können trotzdem großartig sein, siehe A Note on Repo AWSomeness.
Um AWS nutzen zu können, müssen Sie sich zunächst für ein Konto anmelden.
Wenn Sie sich bei Amazon Web Services (AWS) anmelden, wird Ihr AWS-Konto automatisch für alle Dienste in AWS angemeldet. Ihnen werden nur die Dienste in Rechnung gestellt, die Sie nutzen. Neue Benutzer haben über das kostenlose Kontingent von AWS Anspruch auf eine 12-monatige Nutzung.
Um ein AWS-Konto zu erstellen, öffnen Sie http://aws.amazon.com/ und klicken Sie dann auf Registrieren. Befolgen Sie die Anweisungen auf dem Bildschirm. Ein Teil des Anmeldevorgangs umfasst den Empfang eines Anrufs und die Eingabe einer PIN über die Telefontastatur. Notieren Sie sich Ihre AWS-Konto-ID.
Die AWS Command Line Interface ist ein einheitliches Tool zur Verwaltung von AWS-Services, mit dem Sie mehrere AWS-Services über die Befehlszeile steuern und über Skripte automatisieren können.
Das aws.sh-Skript installiert die AWS CLI. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install awscli
Führen Sie den folgenden Befehl aus, um die AWS CLI zu konfigurieren:
$ aws configure
Alternativ synchronisiert das aws.sh-Skript auch den Vorlagenordner .aws/
mit Ihrem Home-Ordner. Beachten Sie, dass beim Ausführen des aws.sh-Skripts alle vorhandenen ~/.aws/
-Ordner überschrieben werden. Aktualisieren Sie die Konfigurationsdatei mit Ihren Anmeldeinformationen und Ihrem Standort:
[default]
region = us-east-1
[default]
aws_access_key_id = YOURACCESSKEY
aws_secret_access_key = YOURSECRETKEY
Achten Sie darauf, dass Sie Ihre Anmeldeinformationen nicht versehentlich einchecken. Die .gitignore-Datei ist so eingestellt, dass Dateien mit Anmeldeinformationen ignoriert werden.
Weitere Informationen finden Sie im folgenden AWS CLI IPython-Notizbuch.
Obwohl die AWS CLI eine großartige Ressource zur Verwaltung Ihrer AWS-basierten Dienste ist, ist es schwierig, sich an die Verwendung von Folgendem zu erinnern :
SAWS
zielt darauf ab, die AWS CLI mit Funktionen zu erweitern , die sich auf Folgendes konzentrieren:
Unter der Haube wird SAWS
von der AWS CLI betrieben und unterstützt dieselben Befehle und Befehlsstrukturen .
SAWS
und AWS CLI
Nutzung:
aws [parameters] [options]
SAWS
Funktionen:
SAWS
ist für Mac, Linux, Unix und Windows verfügbar.
Siehe den Repo-Link.
Boto ist das offizielle AWS SDK für Python.
Das aws.sh-Skript installiert boto. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install boto
Boto verwendet dieselbe Konfiguration wie im Abschnitt AWS CLI beschrieben.
Weitere Informationen finden Sie im folgenden Boto IPython-Notizbuch.
Bevor ich S3cmd entdeckte, habe ich die S3-Konsole für grundlegende Vorgänge und Boto für mehr schwere Aufgaben verwendet. Manchmal möchte ich jedoch einfach eine Befehlszeile hacken, um meine Arbeit zu erledigen.
Ich habe festgestellt, dass S3cmd ein großartiges Befehlszeilentool für die Interaktion mit S3 auf AWS ist. S3cmd ist in Python geschrieben, Open Source und sogar für die kommerzielle Nutzung kostenlos. Es bietet erweiterte Funktionen als die AWS CLI.
S3cmd ist nur Python 2.
Das aws.sh-Skript installiert s3cmd. Wenn Sie es lieber separat installieren möchten, führen Sie Folgendes aus:
$ pip install s3cmd
Wenn Sie den folgenden Befehl ausführen, werden Sie aufgefordert, Ihren AWS-Zugriff und Ihre geheimen AWS-Schlüssel einzugeben. Stellen Sie sicher, dass Sie ein IAM -Konto verwenden, anstatt das Root -Konto zu verwenden.
Ich schlage auch vor, die GPG -Verschlüsselung zu aktivieren, die Ihre Daten in Ruhe verschlüsselt und es HTTPS ermöglicht, Ihre Daten auf dem Transport zu verschlüsseln. Beachten Sie, dass dies die Leistung beeinträchtigen kann.
$ s3cmd --configure
Alternativ synchronisiert das AWS.SH -Skript auch die Vorlage .s3cfg
-Datei mit Ihrem Home -Ordner. Hinweis Das Ausführen des AWS.SH -Skripts überschreibt jede vorhandene ~/.s3cfg
-Datei. Aktualisieren Sie die Konfigurationsdatei mit Ihren Anmeldeinformationen und Ihrem Standort:
[Credentials]
aws_access_key_id = YOURACCESSKEY
aws_secret_access_key = YOURSECRETKEY
...
bucket_location = US
...
gpg_passphrase = YOURPASSPHRASE
Achten Sie darauf, dass Sie Ihre Anmeldeinformationen nicht versehentlich einchecken. Die .Gitignore -Datei wird so eingestellt, dass Dateien mit Anmeldeinformationen ignoriert werden.
Siehe das folgende S3CMD IPython -Notizbuch.
S3DISTCP ist eine Erweiterung von DASTCP, die für die Arbeit mit Amazon S3 optimiert ist. S3DISTCP ist nützlich, um kleinere Dateien zu kombinieren und zusammenzusetzen, wodurch ein Muster und eine Zieldatei aufgenommen werden, um kleinere Eingabedateien mit größeren zu kombinieren. S3DistCp kann auch verwendet werden, um große Datenmengen von S3 zu Ihrem Hadoop-Cluster zu übertragen.
S3DISTCP wird mit der AWS CLI gebündelt.
Weitere Informationen finden Sie im folgenden S3DISTCP Ipython -Notebook.
S3-Parallel-Put ist ein großartiges Tool, um mehrere Dateien parallel auf S3 hochzuladen.
$ git clone https://github.com/twpayne/s3-parallel-put.git
Siehe das folgende S3-Parallel-Put-Ipython-Notizbuch.
RedShift ist ein schnelles Data Warehouse, das auf der massiven Parallelverarbeitung (MPP) auf der Technologie basiert.
Befolgen Sie diese Anweisungen.
Weitere Informationen finden Sie im folgenden Red -Shift -Ipython -Notizbuch.
Kinesis streams Daten in Echtzeit mit der Fähigkeit, Tausende von Datenströmen pro Sekunde zu verarbeiten.
Befolgen Sie diese Anweisungen.
Siehe das folgende Kinesis Ipython -Notizbuch.
Lambda führt Code als Antwort auf Ereignisse aus und verwaltet automatisch Rechnungsressourcen.
Befolgen Sie diese Anweisungen.
Siehe das folgende Lambda Ipython Notebook.
Amazon Machine Learning ist ein Service, der es Entwicklern aller Fähigkeiten erleichtert, maschinelles Lerntechnologie zu nutzen. Amazon Machine Learning bietet Visualisierungstools und Assistenten, die Sie durch den Prozess des Erstellens maschineller Lernmodelle (ML) führen, ohne komplexe ML -Algorithmen und -technologie lernen zu müssen. Sobald Ihre Modelle fertig sind, erleichtert das maschinelle Lernen von Amazon es einfach, Vorhersagen für Ihre Anwendung mit einfachen APIs zu erhalten, ohne den Codes für benutzerdefinierte Vorhersagegenerierung implementieren zu müssen oder eine Infrastruktur zu verwalten.
Befolgen Sie diese Anweisungen.
[In Kürze] Siehe das folgende AWS maschinelles Lernen Ipython Notebook.
Heroku, wenn Sie damit noch nicht vertraut sind, ist eine Plattform-AS-A-Service (PaaS), die es wirklich einfach macht, Ihre Apps online bereitzustellen. Es gibt andere ähnliche Lösungen da draußen, aber Heroku gehörte zu den ersten und gehört derzeit am beliebtesten. Es erleichtert nicht nur das Leben eines Entwicklers, sondern ich finde, dass die Bereitstellung von Heroku beim Aufbau einer App dazu zwingt, moderne App -Entwicklungs -Best Practices zu verfolgen.
Angenommen, Sie haben ein Konto (melden Sie sich an, wenn Sie dies nicht anzumelden), lassen Sie uns den Heroku-Kunden für die Befehlszeile installieren. Heroku bietet ein Mac OS X -Installateur, den Heroku -Symbollbelt, der den Kunden umfasst. Aber für diese Art von Werkzeugen verwende ich lieber Homebrew. Es ermöglicht es uns, besser zu verfolgen, was wir installiert haben. Zum Glück für uns beinhaltet Homebrew eine heroku-toolbelt
Formel:
$ brew install heroku-toolbelt
Die Formel hat möglicherweise nicht die neueste Version des Heroku -Kunden, die ziemlich oft aktualisiert wird. Lassen Sie es uns jetzt aktualisieren:
$ brew upgrade heroku-toolbelt
Haben Sie keine Angst, ab und zu heroku update
durchzuführen, um immer die neueste Version zu haben.
Melden Sie sich in Ihrem Heroku -Konto mit Ihrer E -Mail und Ihrem Passwort an:
$ heroku login
Wenn dies ein neues Konto ist und Sie noch keinen öffentlichen SSH -Schlüssel in Ihrem ~/.ssh
-Verzeichnis haben, wird es angeboten, einen für Sie zu erstellen. Sag ja! Es wird auch den Schlüssel zu Ihrem Heroku -Konto hochladen, mit dem Sie Apps von diesem Computer bereitstellen können.
Wenn es nicht angeboten wurde, den SSH -Schlüssel für Sie zu erstellen (dh Ihr Heroku -Konto ist bereits SSH -Schlüssel zugeordnet), können Sie dies manuell tun, indem Sie ausführen:
$ mkdir ~/.ssh
$ ssh-keygen -t rsa
Halten Sie den Standarddateinamen bei und überspringen Sie die Passphrase, indem Sie nur die Eingabetaste in beide Male drücken. Fügen Sie dann den Schlüssel zu Ihrem Heroku -Konto hinzu:
$ heroku keys:add
Sobald das Hauptgeschäft abgeschlossen ist, können Sie Apps bereitstellen! Heroku hat einen großartigen Anführer, also werde ich Sie darauf hinweisen (die hier verknüpfte hier ist für Python, aber es gibt eine für jede beliebte Sprache). Heroku verwendet Git, um Code für die Bereitstellung zu überschreiten. Stellen Sie daher sicher, dass Ihre App unter Git -Versionskontrolle steht. Ein kurzes Cheat -Blatt (wenn Sie Heroku schon einmal verwendet haben):
$ cd myapp/
$ heroku create myapp
$ git push heroku master
$ heroku ps
$ heroku logs -t
Das Heroku Dev Center ist voller großartiger Ressourcen. Schauen Sie sich es also unbedingt an!
Das Skript datAsStores.sh wird mySQL installiert. Wenn Sie es vorziehen, es separat zu installieren, laufen Sie aus:
$ brew update # Always good to do
$ brew install mysql
Wie Sie in der OUPUT von Homebrew sehen können, müssen wir es zuerst einrichten, bevor wir MySQL verwenden können:
$ unset TMPDIR
$ mkdir /usr/local/var
$ mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
Verwenden Sie das MySQL -Server, um den MySQL -Server zu starten, das Tool von mysql.server
:
$ mysql.server start
Um es zu stoppen, wenn Sie fertig sind, rennen Sie:
$ mysql.server stop
Sie können die verschiedenen Befehle sehen, die für mysql.server
verfügbar sind, mit:
$ mysql.server --help
Ausführen:
$ mysql -uroot
(Verwenden Sie die MySQL -Hülle mit exit
.)
Hinweis : Standardmäßig hat das MySQL root
kein Passwort. Für eine lokale Entwicklungsdatenbank ist es nicht wirklich wichtig. Wenn Sie es jedoch ändern möchten, können Sie $ mysqladmin -u root password 'new-password'
verwenden.
In Bezug auf einen GUI -Kunden für MySQL bin ich an die offizielle und kostenlose MySQL Workbench gewöhnt. Fühlen Sie sich jedoch frei, das zu verwenden, was Sie bevorzugen.
Das Skript datAsStores.sh -Skript installiert MySQL Workbench. Wenn Sie es vorziehen, es separat zu installieren, laufen Sie aus:
$ brew install caskroom/cask/brew-cask
$ brew cask install --appdir="/Applications" mysqlworkbench
Hier finden Sie auch den Download von MySQL Workbench hier. ( Hinweis : Sie werden aufgefordert, sich anzumelden. Sie müssen nicht auf "Nein, danke, starten Sie einfach meinen Download!" Unten.)
MongoDB ist eine beliebte NoSQL -Datenbank.
Das Skript datAsStores.sh -Skript installiert MongoDB. Wenn Sie es vorziehen, es separat zu installieren, laufen Sie aus:
$ brew update
$ brew install mongo
Starten Sie in einem Terminal den MongoDB -Server:
$ mongod
Stellen Sie in einem anderen Terminal eine Verbindung zur Datenbank mit der Mongo -Shell mit:
$ mongo
Ich werde Sie auf MongoDBs Ersteanleitung für mehr beziehen lassen!
Redis ist ein loderner, schneller, schlüssiger Wert, der die Festplatte für die Persistenz verwendet. Es ist wie eine NoSQL -Datenbank, aber es gibt viele coole Dinge, die Sie damit anfangen können, die mit anderen Datenbanklösungen schwierig oder ineffizient sind. Zum Beispiel wird es häufig als Sitzungsmanagement oder Caching von Web -Apps verwendet, aber es hat viele andere Verwendungen.
Das Skript datAsStores.sh wird Redis installiert. Wenn Sie es vorziehen, es separat zu installieren, laufen Sie aus:
$ brew update
$ brew install redis
Starten Sie einen lokalen Redis -Server mit den Standardkonfigurationseinstellungen mit:
$ redis-server
Für die erweiterte Nutzung können Sie die Konfigurationsdatei unter /usr/local/etc/redis.conf
(ich schlage vor, zuerst eine Sicherung vorzunehmen) zu optimieren und diese Einstellungen zu verwenden mit:
$ redis-server /usr/local/etc/redis.conf
Stellen Sie in einem anderen Terminal eine Verbindung zum Server mit der Befehlszeilenschnittstelle der Redis mit:
$ redis-cli
Ich werde Sie auf Redis 'Dokumentation oder andere Tutorials verweisen, um weitere Informationen zu erhalten.
Wie es auf der Box sagt, ist Elasticsearch eine "leistungsstarke Open Source, verteilte Echtzeitsuche und Analytics Engine". Es verwendet eine HTTP -REST -API, mit der es wirklich einfach ist, mit jeder Programmiersprache zu arbeiten.
Sie können Elasticsearch für coole Dinge wie Suchergebnisse in Echtzeit, Autocomplete, Empfehlungen, maschinelles Lernen und mehr verwenden.
Das Skript von DataStores.sh wird ElasticSearch installiert. Wenn Sie es vorziehen, es separat zu installieren, lesen Sie die folgende Diskussion.
Elasticsearch läuft auf Java. Überprüfen Sie also, ob Sie es installiert haben, indem Sie ausgeführt werden:
$ java -version
Wenn Java noch nicht installiert ist, wird ein Fenster angezeigt, das Sie zur Installation auffordert. Klicken Sie auf "Installieren".
Installieren Sie als nächstes Elasticsearch mit:
$ brew install elasticsearch
Hinweis : Elasticsearch hat auch ein plugin
-Programm, das auf Ihren PATH
verschoben wird. Ich finde das zu generisch eines Namens, also benenne ich ihn in elasticsearch-plugin
um, indem ich das Laufen wieder machen muss (muss das erneut tun, wenn Sie Elasticsarch aktualisieren):
$ mv /usr/local/bin/plugin /usr/local/bin/elasticsearch-plugin
Im Folgenden werde ich elasticsearch-plugin
verwenden. Ersetzen Sie es einfach durch plugin
wenn Sie diesen Schritt nicht befolgt haben.
Wie Sie vermutet haben, können Sie Elasticsearch Plugins hinzufügen. Eine beliebte ist Elasticsearch-Head, die Ihnen eine Webschnittstelle zur Rest-API gibt. Installieren Sie es mit:
$ elasticsearch-plugin --install mobz/elasticsearch-head
Starten Sie einen lokalen Elasticsearch -Server mit:
$ elasticsearch
Testen Sie, dass der Server durch Ausführen korrekt funktioniert:
$ curl -XGET 'http://localhost:9200/'
Wenn Sie das ElasticSearch-Head-Plugin installiert haben, können Sie seine Schnittstelle unter http://localhost:9200/_plugin/head/
besuchen.
Die Dokumentation von Elasticsearch ist eher eine Referenz. Um loszulegen, schlage ich vor, einige der Blog -Beiträge zu lesen, die mit dieser Stackoverflow -Antwort verlinkt sind.
Das Skript web.sh installiert node.js. Sie können es auch manuell mit Homebrew installieren:
$ brew update
$ brew install node
Die Formel installiert auch den NPM -Paketmanager. Wie die Homebrew-Ausgabe vorgeschlagen hat, müssen wir jedoch unseren Weg zu /usr/local/share/npm/bin
hinzufügen, damit sie mit NPM-installierten Modulen mit ausführbaren Ausführungen abgeholt werden.
Fügen Sie diese Zeile dazu Ihrer ~/.path
export PATH
hinzu:
PATH=/usr/local/share/npm/bin: $PATH
Öffnen Sie ein neues Terminal, damit die $PATH
-Änderungen wirksam werden.
Wir müssen NPM auch mitteilen, wo die Xcode -Befehlszeilen -Tools ermittelt werden sollen, indem wir ausführen:
$ sudo xcode-select -switch /usr/bin
(Wenn Xcode -Befehlszeilen -Tools von Xcode installiert wurden, versuchen Sie es stattdessen :)
$ sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
Knotenmodule werden standardmäßig lokal im Ordner node_modules
jedes Projekts installiert. Es gibt jedoch mindestens zwei, die es wert sind, global zu installieren. Das sind Coffeescript und Grunzen:
$ npm install -g coffee-script
$ npm install -g grunt-cli
So installieren Sie ein Paket:
$ npm install # Install locally
$ npm install -g # Install globally
So installieren Sie ein Paket und speichern Sie es in package.json
-Datei Ihres Projekts:
$ npm install --save
Um zu sehen, was installiert ist:
$ npm list # Local
$ npm list -g # Global
Um veraltete Pakete (lokal oder global) zu finden:
$ npm outdated [-g]
So upgraden Sie alle oder ein bestimmtes Paket auf:
$ npm update []
Um ein Paket zu deinstallieren:
$ npm uninstall
JSHINT ist der beste Freund eines JavaScript -Entwicklers.
Wenn die zusätzliche Kreditaufgabe zur Installation von Sublime Package Manager abgeschlossen wurde, kann JSHINT als Teil des Sublime -Textes ausgeführt werden.
Das Web.sh -Skript installiert JSHINT. Sie können es auch über NPM manuell installieren:
$ npm install -g jshint
Befolgen Sie die zusätzlichen Anweisungen auf der Seite "JSHINT Package Manager" oder erstellen Sie sie manuell.
CSS -Präprozessoren werden immer beliebter, die beliebtesten Prozessoren sind weniger und sass. Die Vorverarbeitung ähnelt dem Kompiliencode für CSS. Es ermöglicht Ihnen, CSS auf viele verschiedene Arten wiederzuverwenden. Beginnen wir mit der Verwendung weniger als Basic -Präprozessor, es wird von vielen beliebten CSS -Frameworks wie Bootstrap verwendet.
Das Web.sh -Skript installiert weniger. Um weniger manuell zu installieren, müssen Sie NPM / Knoten verwenden, den Sie früher mit Homebrew installiert haben. In der terminalen Verwendung:
$ npm install -g less
Hinweis: Das -g
-Flag ist optional, verhindert jedoch, dass Sie mit Dateipfaden herumspielen müssen. Sie können ohne das Flag installieren und nur wissen, was Sie tun.
Sie können überprüfen, ob es ordnungsgemäß installiert wird, indem Sie Folgendes verwenden:
$ lessc --version
Dies sollte einige Informationen über den Compiler ausgeben:
lessc 1.5.1 (LESS Compiler) [JavaScript]
Okay, weniger wird installiert und läuft. Großartig!
Es gibt viele verschiedene Möglichkeiten, weniger zu verwenden. Im Allgemeinen verwende ich es, um mein Stylesheet lokal zu kompilieren. Sie können dies tun, indem Sie diesen Befehl im Terminal verwenden:
$ lessc template.less template.css
Die beiden Optionen sind die "Eingabe "- und" Ausgabedateien "für den Compiler. Der Befehl schaut im aktuellen Verzeichnis nach weniger Stylesheet, kompiliert es und gibt es in der zweiten Datei im selben Verzeichnis aus. Sie können Pfade hinzufügen, um Ihre Projektdateien organisiert zu halten:
$ lessc less/template.less css/template.css
Lesen Sie hier mehr über weniger auf ihrer Seite: http://lesscs.org/
Dieser Abschnitt befindet sich in der Entwicklung.
Das Android.sh -Skript installiert Java.
Wenn Sie es vorziehen, es separat zu installieren, können Sie den JDK hier herunterladen oder ausführen:
$ brew update
$ brew install caskroom/cask/brew-cask
$ brew cask install --appdir="~/Applications" java
Das Android.sh -Skript installiert den Android SDK.
Wenn Sie es vorziehen, es separat zu installieren, können Sie es hier herunterladen.
Das Android.sh -Skript installiert Android Studio.
Wenn Sie es vorziehen, es separat zu installieren, können Sie es hier herunterladen oder ausführen:
$ brew update
$ brew install caskroom/cask/brew-cask
$ brew cask install --appdir="~/Applications" android-studio
Das Android.sh -Skript installiert Java.
Wenn Sie es vorziehen, es separat zu installieren, können Sie es hier herunterladen oder ausführen:
$ brew update
$ brew install caskroom/cask/brew-cask
$ brew cask install --appdir="~/Applications" intellij-idea-ce
Fehlerberichte, Vorschläge und Zuganfragen sind willkommen!
Siehe Seite Credits.
Sie können mich gerne kontaktieren, um Probleme, Fragen oder Kommentare zu besprechen.
Meine Kontaktinformationen finden Sie auf meiner GitHub-Seite.
Dieses Repository enthält eine Vielzahl von Inhalten; Einige wurden von Donne Martin entwickelt, andere von Dritten. Die Inhalte Dritter werden unter der von diesen Parteien bereitgestellten Lizenz verbreitet.
Die von Donne Martin entwickelten Inhalte werden unter der folgenden Lizenz verbreitet:
Ich stelle Ihnen Code und Ressourcen in diesem Repository unter einer Open-Source-Lizenz zur Verfügung. Da es sich um mein persönliches Repository handelt, stammt die Lizenz, die Sie für meinen Code und meine Ressourcen erhalten, von mir und nicht von meinem Arbeitgeber (Facebook).
Copyright 2015 Donne Martin
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.