Sign inSign up

i9corp/repo-debian

By i9corp

•Updated over 6 years ago

Repositório para pacotes deb

Image
0

1.4K

i9corp/repo-debian repository overview

⁠REPOSITÓRIO DE PACOTES DEBIAN

⁠Instalando o Repositório

Para realizar a Build de seu próprio repositório, deve-se seguir os seguintes passos:

⁠Configurando as Variáveis de Ambiente

Com as variáveis de ambiente serão definidas suas preferências em relação ao repositório, com elas deve-se configurar opções de acesso, URL, entre outros.

Dentro do arquivo docker-compose.yml encontraremos as variáveis para configurar nosso repositório, sendo elas:

⁠Debian
  • ARCHITECTURE (Arquitetura da versão do Debian)
  • VERSION (Versão Debian)
⁠Repositório
  • REPO_PASSWD (Senha para acesso ao repositório por SSH)
  • REPO_ADDRESS (Endereço http do servidor onde o repositório será instalado, o será utilizado este endereço pelo Apt)
  • REPO_NAME (Nome do repositório)
⁠Chave GnuPG
  • GPG_NAME (Nome do proprietário da chave, campo "Real Name" do ambiente de criação de chave GnuPG⁠)
  • GPG_EMAIL (E-mail do proprietário da chave GnuPG)
⁠Exemplo de docker-compose.yml
version: "2"
services:
 debian:
   image: "i9corp/repo-debian:latest"
   ports:
     - "8080:80"
     - "2222:22"
     - "137137:137/tcp"
     - "138138:138/tcp"
     - "139139:139"
     - "445445:445"
   volumes:
     - "vol_repo-debian:/etc/i9corp/packages"
   environment:
     - "ARCHITECTURE=x86_64"
     - "VERSION=5.11"
     - "REPO_PASSWD=123456"
     - "REPO_ADDRESS=http://192.168.0.1:8080"
     - "REPO_NAME=my_repo"
     - "GPG_NAME=John Doe"
     - "GPG_EMAIL=localhost@localhost"
     - "BUILD_PASSWD=123456"
     - "BUILD_LOGIN=build"
volumes:
  vol_repo-debian:

⁠Usando a Imagem

Para executar sua imagem docker a partir das configurações presentes em seu arquivo docker-composer execute dentro do diretório raiz de seu projeto o comando:

docker-compose up -d

Com ele você iniciará sua imagem em modo deamon

Para saber mais sobre as funcionalidades do docker-compose acesse a documentação⁠.

⁠Enviando Pacotes ao Repositório

O envio de pacotes ao repositório é realizado de forma relativamente simples, através de uma dinâmica de "cópia e cola" de arquivos, semelhante a copiar arquivos dentro de diretórios locais.

Para isso é necessário estabelecer uma conexão com o servidor através de algum programa capaz de realizar conexão SCP, no meu caso foi utilizado o programa Win SCP⁠.

A conexão deve ser feita através do endereço de ip e configuração de porta SSH definido no arquivo de configuração docker-composer.yml, além das credenciais de senha e login definidas pelas variáveis de ambiente também presentes no arquivo .yml.

Estabelecida a conexão, por padrão os pacotes devem ser enviados ao seguinte diretório:

/etc/i9corp/packages/debian/pool/main/

Após o envio dos pacotes ao repositório deve-se restabelecer ums conexão via SSH, através dos dados de endereço e senha definidos no arquivo docker-compose.yml e com o usuário jenkins. Estabelecida a conexão SSH, deve-se executar os seguintes comandos;

sudo su
sync-repo   

Desta maneira você estará entrando em modo de root com seu usuário jenkins, e executando o script sync-repo, responsável pelo sincronismo e assinatura automática de pacotes.

⁠

Tag summary

Content type

Image

Digest

Size

194.1 MB

Last updated

over 6 years ago

docker pull i9corp/repo-debian