¿Cómo creo un servidor de actualización local para Anaconda Python?

¿Cómo creo un servidor de actualización local para Anaconda Python?

Tengo un conjunto de computadoras en red que no tienen acceso a Internet. En cada una de estas computadoras, necesito instalar la distribución Anaconda Python. Actualmente, esto se hace mediante la instalación manual en cada máquina a través de una carpeta compartida en un servidor.

Sin embargo, esto deja las máquinas configuradas estáticamente con la versión de Anaconda instalada y no pueden actualizarse usando los conda updatecomandos. Esto también significa que no se pueden crear entornos utilizando el conda createcomando.

Me gustaría configurar un servidor centralizado donde podamos mantener manualmente las versiones de Anaconda Python (es decir, Python 2.7.x y Python 3.x). Los usuarios de otras máquinas entonces apuntarían a este servidor de actualización y podrían actualizar e incluso crear nuevos entornos simplemente usando los comandos conda updateo conda create.

¿Cómo configuro esto?

Respuesta1

Cree un servidor HTTP y copie todo el contenido dehttp://repo.continuum.io/pkgs/. Apunte a este nuevo servidor con un archivo .condarc.

Elija un servidor web y coloque allí los archivos mencionados en el repositorio público (arriba), con una estructura de directorio idéntica (pero no necesita la parte /pkgs/free/). Utilice el archivo del repositorio (por ejemplo.http://repo.continuum.io/pkgs/free/linux-64/repodata.json) para descubrir todos los archivos, OBTÉNLOS y colóquelos en su servidor web interno.

Luego, cree un archivo .condarc conesta plantilla, suministrando su servidor web interno como:

channels:
  - http://your.web.server/

Esto le dice a conda que obtenga paquetes de su repositorio local, en lugar del repositorio público de Continuum.

Una vez que haya hecho esto, ejecutar el comando conda install anacondadesplegará la última versión de la plataforma Anaconda, desde su repositorio interno. He hecho lo anterior y puedo verificar que funciona perfectamente. Una advertencia: asegúrese de reflejar todo el repositorio; ¡no intente optimizar los paquetes que incluye!

información relacionada