Commit bdfb1402 by Kim Meiser

initial import

parents
<!DOCTYPE html>
<html>
<head>
<title>Getting Started</title>
<link rel="stylesheet" media="all" href="style.css" />
</head>
<body>
<h1>Eine eigene Webseite auf shared hosten</h1>
<p>shared ist der gemeinsame Host für Web- und weitere Anwendungen im Hackerspace.</p>
<h2>Nutzen</h2>
<p>
Es ist nicht notwendig, eine eigene virtuelle Maschine als Host für jedes Softwareprojekt oder jede Webseite einzurichten.
In den meisten Fällen ist es ausreichend, <em>einen</em> gemeinsamen Host für verschiedene Webseiten zu verwenden, so dass sich nicht
jedes Projekt selbst um die Administration eines Servers kümmern muss. Als gemeinsamer Host für Webseiten und einfache Anwendungen
steht daher der Server <em>shared</em> zur Verfügung.
</p>
<h3>Erreichbarkeit</h3>
<p>Der Host shared ist unter <em>shared.local.hacksaar.de</em> erreichbar, allerdings nur aus dem WLAN-Netz HACKSAAR-24.
Die Erreichbarkeit aus dem WLAN-Netz HACKSAAR-50 wird bald eingerichtet.
Eine Erreichbarkeit aus dem Internet ist zur Zeit nicht möglich.</p>
<h3>Scope</h3>
<p>Shared ist für einfache Webseiten und andere einfache Anwendungen ausgelegt. Komplexe Projekte, deren Anforderungen das Angebot von shared
übersteigen, können natürlich immer noch auf einer eigenen virtuellen Maschine gehostet werden. Eine Anleitung dazu findest du <a href="https://wiki.hacksaar.de/Rudi">hier</a>.</p>
<h2>Veröffentlichen der aktuellen Version deiner Webseite</h2>
<p>Idealerweise musst du dich so wenig wie möglich mit dem Hosting auf shared auseinandersetzen. Ziel ist es, dass du die aktuelle Version deiner Webseite oder deines Projekts mit nur einem Befehl veröffentlichen kannst:</p>
<pre>git push sharedhost master</pre>
<p>und alles ist erledigt.</p>
<h2>Einrichtung eines neuen Projekts auf shared</h2>
<p>
Das Veröffentlichen einer bestimmten Softwareversion nennt man auch deployment. Eine einmalige Konfiguration ist notwendig, damit das deployment deiner Software
auf shared in einem Befehl funktionieren kann. Damit klar ist, welche Aufgaben dir abgenommen werden, und damit
die Konfiguration für Interessierte nachvollziehbar wird, sind alle Schritte zur Einrichtung hier dokumentiert.
</p>
<h3>Voraussetzungen</h3>
<p>
Voraussetzung für ein Deployment auf shared ist, dass dein Projekt <em>git</em> zur Verwaltung des Quellcodes verwendet.
Wir empfehlen natürlich <a href="https://git.hacksaar.de">git.hacksaar.de</a> als gemeinsames Repository. Eine Alternative dazu stellt u.a. <a href="https://www.github.com">github</a> oder auch
ein eigener git-Server dar. Als gute Dokumentation für den Einsteiger zur Verwendung von git empfiehlt sich <a href="http://git-scm.com/book/en/v2/">Pro Git</a> von Scott Chacon und Ben Straub.
</p>
<h3>Clonen des Repositories auf shared</h3>
<p></p>
<pre>cd /var/repo
git clone --bare https://git.hacksaar.de/hacksaar/spacepoints.git</pre>
<h3>Einrichten des Post-Receive-Hook</h3>
<p>Im Verzeichnis hooks wird die Datei post-receive angelegt.</p>
<pre>cd /var/repo/spacepoints.git/hooks
cat > post-receive</pre>
<p>In diese neue Datei wird der Befehl zum checkout nach /var/www/Projektname eingetragen, so dass nach dem checkout in das Repository die Dateien unter /var/www liegen.</p>
<pre>#!/bash/sh
git -work-tree=/var/www/SpacePoints --git-dir=/var/repo/SpacePoints.git checkout -f</pre>
<p>Damit dieser post-receive-hook ausgeführt werden kann muss noch das Recht zur Ausführung vergeben werden.</p>
<pre>chmod +x post-receive</pre>
<h3>Berechtigung zum Zugriff auf shared einrichten</h3>
<p>Einmalig: hinzufügen des public keys zu authorized_keys des git-benutzers auf shared.hacksaar
public key einem admin aushändigen
kopieren des public key auf den server
hinzufügen zu git/.ssh/authorized_key
</p>
<pre>cat id_rsa.pub >> authorized_keys</pre>
<h3>shared-Remote dem eigenen Client hinzufügen</h3>
<p>Hinzufügen des eben eingerichteten Repos zum Client-Repo</p>
<pre>cd /repo/SpacePoints
git remote add sharedhost ssh://git@hacksaar.de/var/repo/spacepoints.git</pre>
<p> Aktualisieren des auf shared.hacksaar laufenden Projekts</p>
<pre>git push sharedhost master</pre>
<p>Fertig!</p>
</body>
</html>
\ No newline at end of file
body {
font-family: "proxima-nova",sans-serif;
margin: 50px 80px 50px 50px;
}
p {
font-size: 16px;
line-height: 28px;
margin: 0 0 22px;
}
p h1, h2, h3, h4, h5, ul, li {
font-weight: 400;
padding: 0;
}
h2 {
font-weight: 600;
color: #2d2d2d;
letter-spacing: 0.2px;
}
pre {
font-family: monospace,serif;
margin: 0;
margin-top: 0;
line-height: 1.5;
background-color: #f6f6f6;
border-radius: 3px;
box-sizing: border-box;
display: block;
font-size: 14px;
overflow: auto !important;
padding: 13px 17px;
white-space: pre !important;
word-wrap: normal !important;
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment