Servidor HTTP Git com Nginx no Debian 8

O Git é um sistema de controle de versão (VCS) que permite o rastreamento de alterações no código. Neste tutorial, mostraremos a instalação de um servidor HTTP (S) Git e a adição de autenticação de nome de usuário / senha.

Pré-requisitos

  • Debian 8 (Jessie).
  • Sudo .
  • Editor de texto de sua escolha ( nano, vim).

Instalando o Software Necessário

Vamos precisar de nginx, git, fcgiwrape apache httpd utils. Vá em frente e digite o terminal.

sudo apt-get install nginx git fcgiwrap apache2-utils

dpkg falhará na instalação do Nginx se outro processo (como o Apache) já estiver vinculado à porta 80.

Criando o diretório Git

Supondo que você deseje criar o diretório git em /var/www/git, você precisará executar os seguintes comandos:

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

Configurando o Nginx

Agora precisamos configurar o Nginx para transmitir o tráfego do Git para o Git. Isso pode ser adicionado à configuração padrão, um costume server {}em /etc/nginx/conf.dou /etc/nginx/sites-enabled.

Os parâmetros e a diretiva do arquivo de configuração devem ser adicionados na ordem em que estão listados abaixo.

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
}

Se você gostaria de ter seus repositórios git em um subdiretório, ou seja. http://your-domain.com/reposfaça a primeira linha location ~ /repos(/.*) {, é uma expressão regular.

Certifique-se de que a server_namediretiva server {}não esteja em conflito com mais nada, caso contrário o Nginx não passará a solicitação.

Adicionando autenticação de senha

O Nginx aceita htpasswdarquivos Apache . Para criá-los, precisaremos executar o seguinte comando:

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

Você será solicitado a digitar sua senha. Para adicionar mais usuários, faça:

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

Um último passo

Certifique-se de recarregar o Nginx para aplicar todas as alterações executando:

sudo service nginx reload

Agora você tem um servidor Git privado! Apreciar.

(Opcional) Crie um script que inicialize os repositórios Git

Observe que www-data(a conta de usuário na qual o FastCGI é executado) deve ter acesso de leitura e gravação ao repositório Git, criando um script agora economiza dores de cabeça posteriormente.

Abra seu arquivo de script ou seja. /var/www/git/gitinit.she cole o seguinte:

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

Você pode executar o script assim:

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

Lembre-se de permitir a execução executando:

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


Leave a Comment

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.