Sign inSign up

i9corp/repo-centos

By i9corp

•Updated almost 7 years ago

Repositório privado para CentOS

Image
0

1.2K

i9corp/repo-centos repository overview

⁠REPOSITÓRIO DE PACOTES CENTOS

⁠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:

⁠CentOS
  • ARCHITECTURE (Arquitetura da versão do CentOS)
⁠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 Yum)
  • 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:
centos:
image: "i9corp/repo-centos:latest"
ports:
    - "80080:80"
    - "22022:22"
volumes:
    - "vol_repo-centos:/etc/i9corp/packages"
environment:
    - "ARCHITECTURE=x86_64"
    - "REPO_PASSWD=123456"
    - "REPO_ADDRESS=http://172.0.0.1"
    - "REPO_NAME=my_repo"
    - "GPG_NAME=John Doe"
    - "GPG_EMAIL=localhost@localhost"
volumes:
vol_repo-centos:
⁠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/centos/${VERSION}/RPMS/${ARCHITECTURE}/

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 repo. 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 repo, e executando o script sync-repo, responsável pelo sincronismo e assinatura automática de pacotes.

⁠

Tag summary

Content type

Image

Digest

Size

9.9 GB

Last updated

almost 7 years ago

docker pull i9corp/repo-centos