Criando repositório de módulos Python localmente

Publicado por Leonardo Berbert Gomes em 03/05/2020

[ Hits: 1.189 ]

Blog: https://www.linkedin.com/in/leoberbert

 


Criando repositório de módulos Python localmente



Bem pessoal, recentemente tenho enfrentado diversos problemas para utilizações de módulos do Python, pois a grande maioria deles não encontram-se instalados nas máquinas nais quais utilizo no trabalho. Você pode estar pensando, por que não utilizar o pip ou o ambiente virtual e instalar os módulos? Porém os servidores não possuem acesso à internet e também não possuo os poderes de root nos mesmos. Desta forma, estarei ensinando abaixo como você poderá resolver este problema. Então vamos lá!!!

Primeiramente será necessário realizar o download do módulo desejado, neste exemplo, utilizarei o módulo do "elasticsearch", logo será necessário realizar o download do source:
Como o servidor não possui acesso à internet, estou fazendo o download pelo browser e em seguida será necessário transferir o pacote para o servidor. Feito isso, seguiremos os passos abaixo.

Criaremos o diretório onde nossos módulos ficarão.

mkdir -p $HOME/.local/lib/python3.6/site-packages

Note que acima, coloquei no nome do diretório qual versão do Python estou utilizando para que eu possa me organizar, pois se posteriormente eu precisar utilizar outra versão do Python, poderei ter outro repositório.

Agora estarei configurando as variáveis de ambiente que são necessárias para que o Python utilize também meu repositório local.

Inserir a linha abaixo no seu arquivo .bashrc

vim $HOME/.bashrc

export PYTHONPATH=$HOME/.local/lib/python3.6/site-packages:$PYTHONPATH

Em seguida carregar a variável configurada acima:

source $HOME/.bashrc

Agora vamos descompactar o nosso pacote "elasticsearch-7.6.0.tar.gz" para realizar a instalação:

tar -xf elasticsearch-7.6.0.tar.gz
$ cd elasticsearch-7.6.0


Observe que abaixo também estamos utilizando a versão do Python 3.6 para instalação:

python3.6 setup.py install --prefix=$HOME/.local

Bem, agora vamos verificar se o módulo está instalado, para isso seguiremos os passos abaixo:

python3.6
Python 3.6.8 (default, Aug 7 2019, 17:28:10)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>


E em seguida faremos a importação do módulo:

>>> from elasticsearch import Elasticsearch

Se tudo ocorrer bem, o retorno da importação será como mostrado acima. Espero que essa dica seja útil a todos.

[]'s leoberbert

Outras dicas deste autor

VI - O fantástico editor de textos

Instalando o Terraform (Ubuntu/Mint/Debian e Derivados)

Tema Ubuntu para Nokia E71

Kitty Terminal - Instalação de Temas

Instalando VirtualBox + Vagrant no openSUSE Leap 15.2

Leitura recomendada

Gerando gráficos com Pylab

Erro: "ImportError: No module named PIL" [Resolvido]

InstaPy: Error, unable to determine correct filename for 64bit linux [Resolvido]

Erro: Python - invalid command 'bdist_wheel' [Resolvido]

Erro ao rodar o IDLE no Python 3.0 b3

  

Comentários
[1] Comentário enviado por fabio em 03/05/2020 - 13:21h

Boa!!! Adicionando meus 2 cents, também é possível testar um módulo sem a necessidade de abrir o Python console. Diretamente na linha de comando digite:

$ python3.6 -m elasticsearch




Contribuir com comentário