Come Configurare CI/CD con Ollama (Passo dopo Passo)
Va bene, passiamo alle cose serie. Configurare CI/CD con Ollama può sembrare complicato all’inizio, ma in realtà non è così difficile una volta che prendi confidenza. In questo tutorial, ti guiderò passo passo su come far funzionare tutto, assicurandoti di poter distribuire automaticamente le tue applicazioni come un professionista – e sì, rendere la tua vita molto più facile nel processo.
Cosa Costruiremo e Perché È Importante
Stiamo costruendo una pipeline efficiente utilizzando Ollama per integrazione e distribuzione continua (CI/CD), che automatizzerà il processo di test e distribuzione del codice. Questo è cruciale poiché assicura che ogni cambiamento venga convalidato, liberando le tue serate da quell’orribile panico da distribuzione dell’ultimo minuto.
Requisiti Preliminari
- Ollama installato sul tuo sistema (Controlla l’ultima versione sulla documentazione ufficiale)
- Python 3.11+
- Node.js 14+ (se stai lavorando con progetti basati su JavaScript)
- Un repository GitHub o qualsiasi altro sistema di controllo versione
- Un tool CI/CD a tua scelta che supporta Ollama (GitHub Actions, GitLab CI, ecc.)
Passo 1: Installa Ollama
Per iniziare a utilizzare Ollama, dovrai prima installarlo. Questo passaggio è importante perché Ollama non appare magicamente. Devi scaricare e installare il software. Ecco come fare.
curl -sSL https://ollama.com/install.sh | sh
Se incontrassi problemi, assicurati che il comando curl sia disponibile nel tuo terminale. Se non lo è, potrebbe essere necessario installarlo utilizzando il tuo gestore pacchetti. Potresti incontrare problemi di autorizzazione; in tal caso, prova a eseguire con sudo.
Passo 2: Configura Il Tuo Repository Git
Non puoi usare CI/CD senza un repository di codice. Creiamo un repository Git se non ne hai già uno. Questo è cruciale perché è dove vive il tuo codice ed è dove CI/CD monitorerà le modifiche.
git init your-project
cd your-project
git add .
git commit -m "Commit iniziale"
Assicurati di aggiungere un file README.md per avere un’idea chiara di cosa tratti il tuo progetto. Potrebbe sembrare un piccolo dettaglio, ma può farti risparmiare tempo a te e agli altri nel lungo termine. E sì, ho dimenticato questo passaggio troppe volte in passato.
Passo 3: Configura Ollama nel Tuo Progetto
Ollama opera utilizzando un file di configurazione chiamato ollama.yaml. Devi configurarlo affinché Ollama sappia quali azioni intraprendere quando si verificano cambiamenti nel tuo repository di codice. Ecco un semplice esempio che puoi utilizzare:
name: MyOllamaCI
version: 1.0
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.11'
- name: Install dependencies
run: |
pip install -r requirements.txt
- name: Run tests
run: |
python -m unittest discover
Avere un file come questo potrebbe farti girare gli occhi, ma credimi: è il tuo progetto per l’automazione. Assicurati di modificarlo secondo le tue specifiche esigenze e dipendenze.
Passo 4: Crea La Tua Pipeline CI/CD
Ora che Ollama è configurato, dovrai creare una pipeline che ascolti i cambiamenti nel tuo repository. Questa parte è cruciale perché automatizza le fasi di test e distribuzione. Quando fai push di nuovo codice, la pipeline inizierà a lavorare. Il codice appare così:
name: CI/CD Pipeline
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.11'
- name: Install dependencies
run: |
pip install -r requirements.txt
- name: Run tests
run: |
python -m unittest discover
- name: Deploy
run: |
echo "Distribuzione in produzione!"
Quando fai commit delle tue modifiche, la pipeline si attiverà, installando le dipendenze, eseguendo i test e poi distribuendo la tua applicazione! Tuttavia, fai attenzione, poiché una distribuzione errata potrebbe portare a variabili ambientali mancanti in produzione. Puoi sempre configurarle nell’interfaccia di amministrazione della tua piattaforma di hosting.
Passo 5: Gestione degli Errori
Quindi, per quanto sembra fantastico questo processo, incontrerai alcuni ostacoli. Ecco un riepilogo degli errori più comuni che potresti incontrare e come risolverli:
- Errori di Dipendenza: Se le tue dipendenze non vengono trovate, controlla il tuo file
requirements.txte verifica che i pacchetti specificati siano installati nel tuo ambiente. - Test che Falliscono: I test unitari spesso falliscono a causa di un semplice errore di battitura o dipendenze obsolete. Esegui i test localmente prima di fare push del tuo codice per assicurarti che passino.
- Fallimento della Distribuzione in Produzione: Questo potrebbe essere causato dalla mancanza di variabili ambientali necessarie durante la fase di distribuzione. Conferma che siano impostate correttamente nella tua piattaforma di hosting.
Le Insidie
Ci sono diverse cose che possono causarti problemi in produzione che la maggior parte dei tutorial non menziona. Ecco alcune delle mie preferite:
- Incongruenza Ambientale: Il tuo ambiente locale potrebbe funzionare perfettamente, ma la produzione può essere molto diversa. Testa sempre in un ambiente che imita la produzione il più possibile.
- File Ignorati: Assicurati che il tuo file
.gitignorenon escluda file di cui hai effettivamente bisogno in produzione (come il tuoollama.yamlo file di configurazione sensibili). - Problemi di Controllo Versione: Se hai più rami, assicurati di sviluppare nel ramo corretto. Fare push nel ramo sbagliato può portare a comportamenti imprevisti.
Esempio Completo di Codice
Ecco l’interezza di quanto abbiamo costruito finora in un’unica sezione coesa. Quando lo metti insieme, dovrebbe apparire così:
name: CI/CD Pipeline
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.11'
- name: Install dependencies
run: |
pip install -r requirements.txt
- name: Run tests
run: |
python -m unittest discover
- name: Deploy
run: |
echo "Distribuzione in produzione!"
Cosa Fare Dopo
Se ti senti avventuroso, è il momento di integrare Ollama con altri strumenti! Ti consiglio vivamente di esplorare strumenti di osservabilità (come Prometheus) per tenere d’occhio le prestazioni della tua app dopo la distribuzione. Questo ti fornisce dati su tutto ciò di cui la tua pipeline CI/CD ha bisogno per migliorare nel tempo.
FAQ
Q: Cosa succede se i miei test sono inaffidabili?
A: I test inaffidabili possono essere un incubo, specialmente quando a volte passano e altre volte falliscono. Cerca condizioni di gara, dipendenze dal tempo o servizi esterni che potrebbero non essere sempre disponibili. Isola i tuoi test ogni volta che è possibile.
Q: Posso usare Ollama con altri strumenti CI/CD?
A: Assolutamente! Anche se gli esempi forniti qui si concentrano su GitHub Actions, Ollama può funzionare con strumenti come GitLab CI, CircleCI o Jenkins. Segui semplicemente la documentazione per la configurazione specifica dello strumento scelto.
Q: Come faccio a sapere quando la mia pipeline CI/CD ha fallito?
A: La tua piattaforma ti notificherà di solito via email o attraverso il cruscotto quando un’attività fallisce. Assicurati che le notifiche siano attivate in modo da essere a conoscenza dei problemi man mano che si presentano.
| Funzione | Ollama | GitLab CI | Jenkins |
|---|---|---|---|
| Star | 165.553 | 135.959 | 36.024 |
| Fork | 15.055 | 35.893 | 14.138 |
| Problemi Aperti | 2.682 | 1.579 | 2.915 |
| Licenza | MIT | MIT | MIT |
| Ultimo Aggiornamento | 2026-03-19 | 2023-04-12 | 2023-05-25 |
Decidere su uno strumento CI/CD che soddisfi le tue esigenze è cruciale. Ollama è migliore di GitLab CI per progetti più piccoli grazie alla sua semplicità, mentre Jenkins ha il suo posto in ambienti aziendali più grandi.
Se non l’hai capito, sono un grande fan di Ollama. È quasi a prova di errore se segui questi passaggi. Ti fa chiedere come hai fatto a vivere senza.
Dati aggiornati al 19 marzo 2026. Fonti: Ollama Stats, GitLab, Jenkins.
Articoli Correlati
- Come Gli Agenti AI Dominano Più Lingue in Modo Fluido
- Ollama vs vLLM: Quale Scegliere per Progetti Collaterali
- I Miei Agenti AI Ora Parlano con Altri Servizi: Ecco Come Ho Fatto
🕒 Published: