HTTP Git Server med Nginx på Debian 8

Git er et versjonskontrollsystem (VCS) som muliggjør sporing av endringer i kode. I denne opplæringen vil vi gå gjennom installasjonen av en HTTP(S) Git-server, og legge til brukernavn/passordautentisering.

Forutsetninger

  • Debian 8 (Jessie).
  • Sudo .
  • Valgfri tekstredigering ( nano, vim).

Installerer nødvendig programvare

Vi trenger nginx, git, fcgiwrapog apache httpd utils. Gå videre og skriv inn i terminalen.

sudo apt-get install nginx git fcgiwrap apache2-utils

dpkg will fail to install Nginx if another process (such as Apache) is already bound to port 80.

Opprette Git-katalogen

Forutsatt at du ønsker å lage git-katalogen på /var/www/git, må du kjøre følgende kommandoer:

mkdir /var/www/git
chown www-data:www-data /var/www/git # Make sure www-data (the user fastcgi runs) from has permissions.

Konfigurerer Nginx

Nå må vi konfigurere Nginx til å sende Git-trafikk til Git. Dette kan legges til standardkonfigurasjonen, en egendefinert server {}/etc/nginx/conf.deller /etc/nginx/sites-enabled.

The configuration file's parameters and directive must be added in the order in which they are listed below.

location ~ (/.*) {
    client_max_body_size 0; # Git pushes can be massive, just to make sure nginx doesn't suddenly cut the connection add this.
    auth_basic "Git Login"; # Whatever text will do.
    auth_basic_user_file "/var/www/git/htpasswd";
    include /etc/nginx/fastcgi_params; # Include the default fastcgi configs
    fastcgi_param SCRIPT_FILENAME /usr/lib/git-core/git-http-backend; # Tells fastcgi to pass the request to the git http backend executable
    fastcgi_param GIT_HTTP_EXPORT_ALL "";
    fastcgi_param GIT_PROJECT_ROOT /var/www/git; # /var/www/git is the location of all of your git repositories.
    fastcgi_param REMOTE_USER $remote_user;
    fastcgi_param PATH_INFO $1; # Takes the capture group from our location directive and gives git that.
    fastcgi_pass  unix:/var/run/fcgiwrap.socket; # Pass the request to fastcgi
}

Hvis du ønsker å ha git-repositoriene dine i en underkatalog, dvs. http://your-domain.com/reposlag den første linjen location ~ /repos(/.*) {, det er et regulært uttrykk.

Make sure the server_name directive in your server {} doesn't clash with anything else or else Nginx wont pass the request on.

Legger til passordautentisering

Nginx godtar Apache- htpasswdfiler, for å lage dem må vi utføre følgende kommando:

htpasswd -c /var/www/git/htpasswd <your username>

Du vil bli bedt om å skrive inn passordet ditt. For å legge til flere brukere, gjør du:

htpasswd /var/www/git/htpasswd <another username>

Et siste steg

Sørg for å laste inn Nginx på nytt for å bruke alle endringene ved å kjøre:

sudo service nginx reload

Du har nå en privat Git-server! Nyt.

(Valgfritt) Lag et skript som initialiserer Git-lagre

Vær oppmerksom på at www-data(brukerkontoen som FastCGI kjører under) må ha lese- og skrivetilgang til Git-depotet, å lage et skript sparer nå hodepine senere.

Åpne skriptfilen, dvs. /var/www/git/gitinit.shog lim inn følgende:

#!/bin/sh
sudo -u www-data mkdir $1
cd $1
sudo -u www-data git init --bare

Du kan kjøre skriptet slik:

cd /var/www/git
./gitinit.sh repo-name

Husk å tillate kjøring ved å kjøre:

chmod +x /var/www/git/gitinit.sh

Legg igjen en kommentar

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.

DDOS-angrep: en kort oversikt

DDOS-angrep: en kort oversikt

Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.

Har du noen gang lurt på hvordan hackere tjener penger?

Har du noen gang lurt på hvordan hackere tjener penger?

Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.

Funksjonaliteter til Big Data Reference Architecture Layers

Funksjonaliteter til Big Data Reference Architecture Layers

Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.

Evolusjon av datalagring – infografikk

Evolusjon av datalagring – infografikk

Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer