Chapitre 6. Fonctions
6.1. Mise en place des fonctions OpenShift Serverless Copier lienLien copié sur presse-papiers!
Pour améliorer le processus de déploiement du code de votre application, vous pouvez utiliser OpenShift Serverless pour déployer des fonctions sans état et pilotées par les événements en tant que service Knative sur OpenShift Container Platform. Si vous souhaitez développer des fonctions, vous devez effectuer les étapes de configuration.
6.1.1. Conditions préalables Copier lienLien copié sur presse-papiers!
Pour activer l'utilisation d'OpenShift Serverless Functions sur votre cluster, vous devez effectuer les étapes suivantes :
L'opérateur OpenShift Serverless et Knative Serving sont installés sur votre cluster.
NoteLes fonctions sont déployées en tant que service Knative. Si vous souhaitez utiliser une architecture pilotée par les événements avec vos fonctions, vous devez également installer Knative Eventing.
-
Vous avez installé le CLI
oc
. -
Vous avez installé le CLI Knative (
kn
). L'installation du CLI Knative permet d'utiliser les commandeskn func
pour créer et gérer des fonctions. - Vous avez installé Docker Container Engine ou Podman version 3.4.7 ou supérieure.
- Vous avez accès à un registre d'images disponible, tel que le OpenShift Container Registry.
- Si vous utilisez Quay.io comme registre d'images, vous devez vous assurer que le dépôt n'est pas privé, ou que vous avez suivi la documentation d'OpenShift Container Platform sur l'autorisation des pods à référencer des images à partir d'autres registres sécurisés.
- Si vous utilisez le OpenShift Container Registry, un administrateur de cluster doit exposer le registre.
6.1.2. Mise en place de Podman Copier lienLien copié sur presse-papiers!
Pour utiliser des fonctionnalités avancées de gestion de conteneurs, vous pourriez vouloir utiliser Podman avec OpenShift Serverless Functions. Pour ce faire, vous devez démarrer le service Podman et configurer le CLI Knative (kn
) pour vous y connecter.
Procédure
Démarrez le service Podman qui sert l'API Docker sur un socket UNIX à l'adresse
${XDG_RUNTIME_DIR}/podman/podman.sock
:systemctl start --user podman.socket
$ systemctl start --user podman.socket
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NoteSur la plupart des systèmes, cette prise est située à l'adresse
/run/user/$(id -u)/podman/podman.sock
.Établir la variable d'environnement qui est utilisée pour construire une fonction :
export DOCKER_HOST="unix://${XDG_RUNTIME_DIR}/podman/podman.sock"
$ export DOCKER_HOST="unix://${XDG_RUNTIME_DIR}/podman/podman.sock"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exécutez la commande build dans le répertoire de votre projet de fonction avec le drapeau
-v
pour voir la sortie verbose. Vous devriez voir une connexion à votre socket UNIX local :kn func build -v
$ kn func build -v
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.1.3. Installation de Podman sur macOS Copier lienLien copié sur presse-papiers!
Pour utiliser des fonctionnalités avancées de gestion de conteneurs, vous pourriez vouloir utiliser Podman avec OpenShift Serverless Functions. Pour ce faire sur macOS, vous devez démarrer la machine Podman et configurer le CLI Knative (kn
) pour vous y connecter.
Procédure
Créer la machine Podman :
podman machine init --memory=8192 --cpus=2 --disk-size=20
$ podman machine init --memory=8192 --cpus=2 --disk-size=20
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Démarrez la machine Podman, qui sert l'API Docker sur un socket UNIX :
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NoteSur la plupart des systèmes macOS, cette prise se trouve à l'adresse
/Users/myuser/.local/share/containers/podman/machine/podman-machine-default/podman.sock
.Établir la variable d'environnement qui est utilisée pour construire une fonction :
export DOCKER_HOST='unix:///Users/myuser/.local/share/containers/podman/machine/podman-machine-default/podman.sock'
$ export DOCKER_HOST='unix:///Users/myuser/.local/share/containers/podman/machine/podman-machine-default/podman.sock'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exécutez la commande build dans le répertoire de votre projet de fonction avec le drapeau
-v
pour voir la sortie verbose. Vous devriez voir une connexion à votre socket UNIX local :kn func build -v
$ kn func build -v
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.1.4. Prochaines étapes Copier lienLien copié sur presse-papiers!
- Pour plus d'informations sur Docker Container Engine ou Podman, voir Options d'outils de construction de conteneurs.
- Voir la section Démarrer avec les fonctions.