Bitbucket ist mehr als nur Git-Code-Management. Vom australischen Unternehmen Atlassian entwickelt, bietet Bitbucket als webbasierte GIT-Solution professionellen Teams einen Ort, an dem sie ihre Projekte planen, Code gemeinsam bearbeiten, testen und bereitstellen können. Im Gegensatz zu anderen Open-Source-Hostern wie SourceForge oder GitHub ist auf Bitbucket nicht das Projekt als Sammlung von Quelltext zentral, sondern der Nutzer mit seinen Repositories. Jedem Benutzer steht eine unbegrenzte Anzahl privater, also nicht öffentlich sichtbarer Repositories, kostenlos zur Verfügung. Auch das Erstellen (Branchen) und Zusammenführen (Mergen) von Abspaltungen (Forks) zählen mit zu den besonderen Features, die es ermöglichen, nicht nur die eigenen Projekte zu managen, sondern auch einfach bei anderen Projekten mitentwickeln zu können. Bitbucket unterstützt das Pushing und Pulling von Git-Repositories sowohl über SSH als auch HTTPS.
Voraussetzungen
Um mit Bitbucket arbeiten zu können, müssen die Ports 7990, 7992 und 7993 erreichbar sein und du benötigst eine externe Datenbank, wie z.B. PostgreSQL, Oracle oder Microsoft SQL Server. Auch MySQL wird für Bitbucket Server-Instanzen unterstützt, wird jedoch nicht empfohlen. Des Weiteren ist es notwendig, dass Git und Perl auf deinem Server laufen.
In den folgenden Unterkapiteln zeige ich dir, wie du dein System mit der externen Datenbank MS SQL Server, Git und Perl ausstattest sowie den Zugriff auf die Ports 7990, 7992 und 7993 ermöglichst.
Installiere MS SQL Server und mache diesen startklar für deine Bitbucket-Site
In diesem Tutorial werde ich MS SQL Server als externe Datenbank meiner Bitbucket-Plattform nutzen. Bei der Installation hilft dir unser Tutorial Microsoft SQL Server unter Ubuntu 16.04/18.04 installieren und einrichten weiter.
Nach der Installation erstellst du eine Datenbank und einen hierzu gehörenden Nutzer, sodass wir später in Bitbucket diese externe Datenbank mit der Plattform in Verbindung setzen können. Mit dem Code aus dem unten eingeblendeten Snippet erreichst du die Kommandoschnittstelle von SQL Server. Hierbei tauscht du den Platzhalter localhost mit der IP deines Servers aus.
sqlcmd -S localhost -U SA
Nach Eingabe des daraufhin geforderten Passworts hast du Zugang zur Kommandoschnittstelle von SQL Server. Hier gibst du dann die im Code-Block unten eingeblendeten Befehle ein, um deine externe Datenbank für die Nutzung des Bitbucket-Servers startklar zu machen. Die Platzhalter bitbucketdb, testuser und password kannst du nach deinem Belieben mit anderen Bezeichnungen austauschen. Jeden Befehl musst du mit dem GO-Kommando bestätigen.
> CREATE DATABASE bitbucketdb
> GO
> USE bitbucketdb
> GO
> ALTER DATABASE bitbucketdb SET ALLOW_SNAPSHOT_ISOLATION ON
> GO
> ALTER DATABASE bitbucketdb SET READ_COMMITTED_SNAPSHOT ON
> GO
> ALTER DATABASE bitbucketdb COLLATE SQL_Latin1_General_CP1_CS_AS
> GO
> SET NOCOUNT OFF
> GO
> USE master
> GO
> CREATE LOGIN testuser WITH PASSWORD=N'password', DEFAULT_DATABASE=bitbucketdb, CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
> GO
> ALTER AUTHORIZATION ON DATABASE::bitbucketdb TO testuser
> GO
Mit dem EXIT-Befehl kannst du die Kommandoschnittstelle von SQL Server dann wieder verlassen.
Installiere Git
Es ist möglich, dass Git sich bereits auf deinem Ubuntu-Server befindet. Überprüfe dies mit dem unten eingeblendeten Befehl.
git --version
Sollte dir im Output keine Versionsnummer von Git ausgegeben werden, dann führe zunächst ein Update deines Servers durch
apt-get update && apt-get upgrade
und installiere Git im Anschluss daran mit dem Kommando unten.
apt-get install git
Führe danach erneut den oben gezeigten Befehl zur Sicherstellung der Versionsnummer von Git durch. Solltest du dementsprechend nach wie vor kein hierzu Info gebendes Output auf das Kommando erhalten, dann öffne die ~/.profile-Datei in einem Editor deiner Wahl. Im unten stehenden Kommando tue ich dies mit dem nano-Editor.
nano ~/.profile
Dort fügst du als Inhalt dann den im Code-Snippet unten gezeigten Code ein, wobei <path/to/git> für das Installationsverzeichnis von Git steht. Hiernach speicherst du das Update im nano-Editor mit der Tastenkombination Strg+O, bestätigst den daraufhin in einem weißen Balken eingeblendeten Dateinamen mit der Enter-Taste und verlässt den Editor mit der Tastenkombination Strg+X.
export PATH=$PATH:<path/to/git>
Installiere Perl
Perl ist eine High-Level-Programmiersprache, die per default in Ubuntu installiert wird.
perl --version
Sollte dir das Output hierauf keine Versionsnummer wiedergeben, dann update zunächst deinen Server
apt-get update && apt-get upgrade
und installiere Perl mit Hilfe des folgenden Kommandos.
apt-get install perl
Erlaube deiner Firewall Zugriff auf die Ports 7990, 7992 und 7993
Bitbucket wird standardmäßig auf Port 7990 ausgeführt. Die gebündelte Elasticsearch-Instanz des Bitbucket Servers, die für die Suchfunktion benötigt wird, benötigt die Ports 7992 und 7993. Dies ist nicht konfigurierbar. Stelle daher sicher, dass diese drei Ports verfügbar sind, indem du die folgenden Befehle durchführst.
ufw allow 7990
ufw allow 7992
ufw allow 7993
Installiere und konfiguriere Bitbucket
Du kannst den Link zur aktuellen Bitbucket-Software kopieren und in einem Befehl an das wget-Präfix anbinden und ausführen, so wie im Code-Snippet unten gezeigt.
wget https://www.atlassian.com/software/stash/downloads/binary/atlassian-bitbucket-5.14.0-x64.bin
Dann sorgst du dafür, dass das Installationsprogramm ausführbar wird, indem du folgenden Befehl im Terminal durchführst. Daraufhin musst du x.x.x im unten stehenden Kommando mit der Versionsnummer des Bitbucket-Servers austauschen, den du zuvor downgeloaded hast.
chmod +x atlassian-bitbucket-x.x.x-x64.bin
Schließlich führst du das Installationsprogramm mit dem unten präsentierten Befehl aus. Hierbei wird ein dediziertes Konto zum Ausführen von Bitbucket Server erstellt, sodass du Bitbucket als Dienst ausführen kannst. Auch in diesem Fall musst du x.x.x mit der dir bekannten Versionsnummer austauschen.
./atlassian-bitbucket-x.x.x-x64.bin
Während der Installation wirst du nach einigen Informationen gefragt. Unter anderem geht es um den Typ der Bitbucket-Instanz. Hier solltest du den Standard wählen (Server-Instanz). Des Weiteren geht es um die Bestätigung des Installations- und Home-Verzeichnisses, sowie um die Ports, unter denen Bitbucket läuft.
Hiernach rufst du http://localhost:7990 in deinem Browser auf, wobei du localhost mit der IP deines Servers austauscht. Daraufhin sollte der Setup-Assistent gestartet werden, wie du im Screenshot unten erkennst.
Sobald der Fortschrittsbalken voll ist, beginnt die Einrichtung deines Bitbucket-Servers. Zunächst geht es um die Schnittstellen-Informationen zwischen deiner externen Datenbank und Bitbucket, wie dir der folgende Screenshot verbildlicht. Nachdem du dich im betreffenden Interface für eine Sprache entschieden hast, wählst du den Datenbank-Typ aus, der extern ist, und selektierst hierzu in der DropDown-Liste die korrekte Datenbank, im Fall dieses Tutorials wäre das Microsoft SQL Server. Danach trägst du den Hostname oder die IP-Adresse deines Servers ein. Die Information zum Port ist bereits per default hinterlegt. Schließlich trägst du noch den Datenbanknamen, den dazu gehörenden Benutzernamen sowie das Passwort ein, bestätigst mit dem Weiter-Button und befolgst die weiteren Anweisungen im Bitbucket Server Setup-Assistenten.
Wenn du dies mit Klick auf den Weiter-Button bestätigt hast, gelangst du zum nächsten Schritt, verbildlicht im unteren Screenshot. Hier kannst du festlegen, ob du eine Evaluierungslizenz benötigst, oder bereits über solch einen Lizenzschlüssel verfügst. Je nachdem, ob du bereits ein Atlassian-Konto besitzt oder nicht, entscheidet sich, wie der Interface-Dialog weiter läuft. In meinem Beispiel besitze ich noch kein solches Konto und fahre mit dem Ein Konto erstellen-Button fort.
Hiernach gelangst du zu einem Interface, in dem du dich als Atlassian-Nutzer registrieren kannst, wie ich dir mit dem folgenden Screenshot zeige.
Daraufhin kannst du deine Lizenz definieren. Hierzu wählst du das Produkt, wofür die Lizenz gelten soll aus einer DropDown-Liste, sowie den Lizenztyp via Button, trägst den Namen deiner Organisation ein, für die du die Lizenz beantragst und legst fest, ob deine Produkt-Instanz (in diesem Fall Bitbucket) bereits installiert ist oder nicht. Die Server ID ist bereits per default hinterlegt. Schließlich generierst du dir die Lizenz mit dem dafür vorgesehenen Button.
Im Anschluss daran werden dir alle Informationen zu deiner Lizenz in einem neuen Interface aufgeführt. Du fährst hier dann mit dem Weiter-Button fort, wenn alle Daten stimmen.
Nun kannst du dir dein Bitbucket-Administratorkonto einrichten. Wenn du alle Felder mit Daten befüllt hast, hast du noch die Wahl entweder so fortzufahren, dass du dein Produkt mit Jira integrierst oder nicht. In meinem Beispiel nutze ich den Button, mit dem ich direkt zu Bitbucket gelange.
Letztlich gelangst du auf die Login-Seite,
die dich nach erfolgreicher Anmeldung auf die Startseite deiner Bitbucket-Plattform navigiert.
Mit Klick auf das Zahnrad-Icon rechts oben in der Leiste, wirst du zu den Settings weitergeleitet. Hier suchst du nach dem Datenbank-Menüpunkt und klickst dort dann den Datenbank migrieren-Button.
Fülle im dadurch generierten Interface alle erforderlichen Formulardaten aus und setze die Migration mit dem Migration starten-Button in Bewegung.
Fazit
Du weißt nun, wie du Bitbucket mit der externen Datenbank von MS SQL Server auf deinem Ubuntu-Server installierst und so einrichtest, dass du ihn als Sharing- und Management-Plattform für deine Coding-Projekte nutzen kannst. Ich wünsche dir viel Erfolg bei deinen Projekten! ?