WitMovil.El Blog de un DevOps
WitMovil.

Explorando la automatización, la tecnología móvil y la ingeniería de software eficiente.

Sistemas Operativos
Explorar
TechCodeAutomation
Nosotros
Acerca deContactoDonar
Conectar
Nuntius GitHub LinkedIn

© 2026 WitMovil

BY NUNTIUS.DEV

PrivacidadTérminosAnti-Spam

Hecho con Next.js & PocketBase

Volver al inicio

Instala Ollama + FastAPI en EasyPanel + Docker: Guía Rápida

Jeyson Orozco
Escrito porJeyson Orozco
Ko-fi
28 de abril de 2022
General
Instala Ollama + FastAPI en EasyPanel + Docker: Guía Rápida

Instalar Ollama en EasyPanel puede parecer una tarea desalentadora, pero con esta guía rápida y sencilla, estarás listo para desplegar tu microservicio de generación de texto en poco tiempo. EasyPanel, una herramienta versátil para gestionar contenedores Docker, hace que el proceso sea eficiente y manejable incluso para aquellos que no son expertos en DevOps.



Paso 1: Preparar el Entorno

Primero, asegúrate de tener EasyPanel configurado correctamente en tu servidor. EasyPanel simplifica la gestión de contenedores Docker y proporciona una interfaz intuitiva para gestionar tus aplicaciones. Una vez instalado EasyPanel, sigue estos pasos para instalar Ollama.

Primero crea un proyecto luego crea un servicio.

Paso 1
— Captura de pantalla 01 —

Coloca ahora App, coloca el nombre que quieras no puedes usar letras en mayúscula, y Create.

Paso 2
— Captura de pantalla 02 —

Tabla de Contenido

Toggle
    • Pasos para implementar:
  • Este Dockerfile configurará el entorno necesario para correr tu aplicación FastAPI con IA
    • Consideraciones si llega haber un error
    • Dockerfile Ollama
    • Pasos para verificar

Pasos para implementar:

  1. Modificar el Dockerfile en EasyPanel:
    • Abre EasyPanel y navega a tu proyecto.
    • Accede a la sección donde puedes editar el Dockerfile.
    • Copia y pega el Dockerfile modificado arriba.
  2. Guardar y desplegar:
    • Guarda los cambios en tu Dockerfile Save.
    • Despliega tu contenedor utilizando la opción de “Deploy” o “Build”.
Paso 3
— Captura de pantalla 03 —

Este Dockerfile configurará el entorno necesario para correr tu aplicación FastAPI con IA

Code
# Start with Ubuntu base image FROM ubuntu:latest # Install necessary packages RUN apt-get update && apt-get install -y \ python3 \ python3-pip \ python3-venv \ curl \ wget \ && rm -rf /var/lib/apt/lists/* # Install Ollama RUN curl https://ollama.com/install.sh | sh # Set up a virtual environment ENV VIRTUAL_ENV=/opt/venv RUN python3 -m venv $VIRTUAL_ENV ENV PATH="$VIRTUAL_ENV/bin:$PATH" # Install Python dependencies in the virtual environment RUN pip install fastapi uvicorn requests # Set working directory WORKDIR /app # Download the Python script from GitHub RUN wget -O app.py https://raw.githubusercontent.com/nuntius-dev/nuntius-dev/main/app.py # Expose Ollama port and FastAPI port EXPOSE 11434 8000 # Create a startup script RUN echo '#!/bin/bash\nollama serve &\nsleep 10\nollama pull phi\nuvicorn app:app --host 0.0.0.0 --port 8000' > /app/start.sh && \ chmod +x /app/start.sh # Set the startup script as the entry point CMD ["/app/start.sh"]

Alerta:
Este Dockerfile configura un entorno Python con todas las bibliotecas necesarias para ejecutar Ollama. Asegúrate de que tu servidor tiene suficiente RAM y CPU para manejar la carga de trabajo de Ollama, ya que la generación de texto puede ser intensiva en recursos. Mínimo 10 gigas de RAM 2 CPUs, pero recomiendo 24 Gigas de RAM y 4 CPUs.

En Deployments luego View saldrá que está siendo la instalación.

Paso 4
— Captura de pantalla 04 —

Luego saldrá de varios minutos done, 10 minutos con 7 RAM y 1 CPU

Paso 5
— Captura de pantalla 05 —

Vemos en amarillo lo que está usando sin siquiera usarlo, y en RAM en rojo.
Parte derecha vamos a Domains / Edit. y cambiamos al puerto 8000, podemos incluir un dominio personalizado siempre y cuando coloquemos la ip de nuestro servidor en nuestro DNS del dominio, seleccionamos la opción Add Domain, es opcional.

Paso 6
— Captura de pantalla 06 —

Luego vamos al dominio y nos saldrá:

Code
{"message":"Bienvenido a la API ollama"}

Para mirar la forma de probar la IA vamos al dominioejemplo.host/docs ojo revisar si es tu dominio o el que te dieron gratis allí.

Paso 7
— Captura de pantalla 07 —

Luego de colocar hola, esta sería la salida:

Paso 8
— Captura de pantalla 08 —

Si tienes problemas. usa el chat de la aplicación y dile que necesitas un Agente. o usa el siguiente botón

Quiero instalar en mi VPS

Consideraciones si llega haber un error

El error NameError: name 'torch' is not defined indica que el módulo torch no está disponible en el entorno de ejecución cuando se intenta usar. Esto puede ser debido a un problema con la instalación o la configuración del entorno.

Primero, asegúrate de que torch se instala correctamente y está disponible en el entorno virtual. Aquí tienes un ejemplo de Dockerfile corregido que debería solucionar este problema:

Dockerfile Ollama

Code
# Start with Ubuntu base image FROM ubuntu:latest # Install necessary packages RUN apt-get update && apt-get install -y \ python3 \ python3-pip \ python3-venv \ curl \ wget \ && rm -rf /var/lib/apt/lists/* # Set up a virtual environment ENV VIRTUAL_ENV=/opt/venv RUN python3 -m venv $VIRTUAL_ENV ENV PATH="$VIRTUAL_ENV/bin:$PATH" # Install Python dependencies RUN pip install --no-cache-dir fastapi uvicorn requests python-decouple pydantic langchain openai tabulate matplotlib pandas langchain-experimental einops accelerate transformers torch # Set working directory WORKDIR /app # Descargar el archivo app.py desde GitHub RUN wget -O app.py https://raw.githubusercontent.com/nuntius-dev/ollama/main/app.py # Exponer el puerto que utilizará FastAPI EXPOSE 80 # Comando para ejecutar la aplicación CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "80"]

Alerta:
Este Dockerfile configura un entorno Python con todas las bibliotecas necesarias para ejecutar Ollama. Asegúrate de que tu servidor tiene suficiente RAM y CPU para manejar la carga de trabajo de Ollama, ya que la generación de texto puede ser intensiva en recursos. Mínimo 10 gigas de RAM 2 CPUs, pero recomiendo 24 Gigas de RAM y 4 CPUs.

Asegúrate de que tu archivo app.py es correcto y no tiene ningún error. Para resolver el problema del torch, verifica que la instalación de torch se realiza correctamente y que no hay conflictos con otras librerías.

Pasos para verificar

  1. Comprueba la instalación de torch:
    • Ejecuta pip list en el contenedor para asegurarte de que torch está instalado. Puedes agregar un paso de verificación en el Dockerfile después de la instalación de las dependencias:
    RUN pip show torch
  2. Revisar el archivo app.py:
    • Asegúrate de que torch está importado correctamente en app.py:
    import torch
  3. Probar el contenedor:
    • Construye y ejecuta el contenedor.Si el error persiste, intenta correr el contenedor en modo interactivo para depurar:
    run -it --rm <image_name> /bin/bash
    • Una vez dentro del contenedor, puedes ejecutar los comandos manualmente para revisar si todo está instalado y configurado correctamente.

Estos pasos deberían ayudarte a resolver el problema con la importación de torch y asegurarte de que todo funciona correctamente en tu contenedor, puedes usar SSH o la consola de Docker para usar esos códigos, también contamos con el servicio instalación de aplicaciones, si tienes problemas. usa el chat de la aplicación y dile que necesitas un Agente.

Conclusión

Con estos sencillos pasos, has instalado Ollama en EasyPanel y estás listo para empezar a generar texto con tu nuevo microservicio. EasyPanel hace que la gestión de contenedores Docker sea accesible y eficiente, permitiéndote enfocarte en desarrollar y desplegar tus aplicaciones sin complicaciones.