Suite à l’article sur Azure SQL Edge, j’ai reçu plusieurs messages demandant s’il était possible d’installer Azure SQL Edge, en fait une édition pouvant évoluer sur plateforme ARM, directement sur le Raspberry Pi sans passer par la couche IoT Hub Microsoft.
La réponse est OUI.
Je ne vais pas détailler ici l’installation d’un OS sur une carte SD à destination du Raspberry Pi. J’ai opté pour une distribution Ubuntu 20.04 qui fonctionne particulièrement bien avec le Pi4 8GB qui me servira pour ce test.
Une fois l’écriture de l’image Ubuntu sur la carte SD via Win32Diskimager (ou Rufus si vous préférez ce dernier), je procède simplement au renommage de mon OS, suivi d’une mise à jour.
sudo hostnamectl set-hostname rpi4ram8
sudo reboot
sudo apt-get update
sudo apt-get upgrade
L’étape suivant consiste à installer Docker, cela fonctionnerait également avec d’autres Runtime come CRI-O ou Podman.
sudo apt-get install -y docker.io
sudo systemctl enable docker
Docker est à présent installé et prêt à l’emploi.
sudo docker version

Il suffit de télécharger l’image du conteneur depuis le repository Microsoft
sudo docker pull mcr.microsoft.com/azure-sql-edge:latest

Et enfin de créer le conteneur
sudo docker run -e 'MSSQL_PID=developer' -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=Password1!' -p 1433:1433 --name azuresqledge -h azuresqledge -d mcr.microsoft.com/azure-sql-edge:latest

Il suffit à présent de tester la connexion à l’instance :

Comme attendu, cela fonctionne parfaitement.
Happy SQL Server on ARM / Raspberry Pi !
Ping : SQL Server – Durabilité retardée | Christophe LAPORTE – Consultant SQL Server
Ping : NAS Synology – Exécuter SQL Server | Christophe LAPORTE – Consultant SQL Server
Bonjour,
Comment relancer docker et le sql server avec le démarrage de ubuntu ?
Aussi comment mapper le répertoire de données /var/opt/mssql/data. Avec celui du système pour pouvoir archiver en cas de besoin ?
Avec mes remerciements
Bonjour
D’un point de vue Ubuntu, pour relancer automatiquement le service Docker :
systemctl enable docker
Par défaut, la restart-policy est à No. vous pouvez utiliser always ou bien unless-stopped
docker update –restart=always [container id]
Bonjour , quel est le niveau minimum de mémoire ? est ce que sur un pi 3 cela passerais ?
Bonjour
L’édition edge, si l’on peut l’appeler ainsi est limitée à 8 vCPU et 64 GB de RAM (et 4 vCPU 32GB RAM pour l’édition développeur). Elle peut donc se satisfaire de 4 GB, voire potentiellement de moins, mais il faut voir côté perf ce que cela va donner.
D’un point de vue RPi maintenant, le seul prérequis est une architecture 64Bits, donc un modèle 3B en ARM-64 devrait pouvoir le faire.