README: Deploy-Key statt HTTPS-Clone auf der VM
Das Repo ist privat, ein HTTPS-Clone auf dem Server wuerde interaktiv nach Zugangsdaten fragen. Stattdessen ein repo-eigener Deploy-Key mit Nur-Lese- Rechten und ein eigener Host-Alias, damit der Key nicht bei anderen GitHub-Repos angeboten wird. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -99,10 +99,44 @@ sudo usermod -aG docker $USER
|
||||
|
||||
Danach einmal neu einloggen.
|
||||
|
||||
### 4. Starten
|
||||
### 4. Deploy-Key einrichten
|
||||
|
||||
Das Repo ist privat, ein HTTPS-Clone auf der VM würde also nach Zugangsdaten
|
||||
fragen. Stattdessen bekommt die VM einen eigenen Deploy-Key mit **Nur-Lese-Rechten**:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/nizzgruber/djnizz_website.git
|
||||
ssh-keygen -t ed25519 -C "djnizz-vm-deploy" -f ~/.ssh/djnizz_deploy -N ""
|
||||
cat ~/.ssh/djnizz_deploy.pub
|
||||
```
|
||||
|
||||
Den ausgegebenen Public Key in GitHub unter **Repo → Settings → Deploy keys →
|
||||
Add deploy key** eintragen und *Allow write access* **nicht** anhaken.
|
||||
|
||||
Anschließend einen eigenen Host-Alias anlegen – bewusst nicht `Host github.com`,
|
||||
sonst würde dieser Key auch bei allen anderen GitHub-Repos angeboten und dort
|
||||
scheitern:
|
||||
|
||||
```bash
|
||||
cat >> ~/.ssh/config <<'EOF'
|
||||
|
||||
Host github-djnizz
|
||||
HostName github.com
|
||||
User git
|
||||
IdentityFile ~/.ssh/djnizz_deploy
|
||||
IdentitiesOnly yes
|
||||
EOF
|
||||
chmod 600 ~/.ssh/config
|
||||
ssh -T git@github-djnizz
|
||||
```
|
||||
|
||||
Die letzte Zeile muss mit `Hi nizzgruber/djnizz_website! You've successfully
|
||||
authenticated` antworten. Dass GitHub danach „does not provide shell access"
|
||||
meldet, ist normal und kein Fehler.
|
||||
|
||||
### 5. Starten
|
||||
|
||||
```bash
|
||||
git clone git@github-djnizz:nizzgruber/djnizz_website.git
|
||||
cd djnizz_website
|
||||
docker compose up -d --build
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user