Subject docker-updater done
This commit is contained in:
parent
3aa4818414
commit
3601652dd3
|
@ -1,6 +1,6 @@
|
|||
include ../../tutorial/pandoc-opts.mk
|
||||
|
||||
SOURCES = subject.md docker-api.md ex-api-updater-intro.md ex-api-updater.md rendu.md end.md
|
||||
SOURCES = subject.md ex-api-updater-intro.md ex-api-updater.md docker-api.md rendu.md end.md
|
||||
|
||||
|
||||
all: subject.pdf
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
Utiliser l'API de Docker
|
||||
========================
|
||||
|
||||
Le Docker Engine expose une API REST sur le protocole HTTP. Comme première
|
||||
tentative, vous pouvez essayer de récupérer des informations générales avec un
|
||||
simple `curl` :
|
||||
|
||||
```bash
|
||||
curl -s --unix-socket /var/run/docker.sock http://localhost/v1.38/info | jq .
|
||||
```
|
||||
|
||||
On retrouve un objet JSON contenant des informations similaires à ce que l'on
|
||||
obtient avec un `docker info`.
|
||||
|
||||
Le premier élément dans le chemin de l'URL correspond à la version de l'API que
|
||||
l'on souhaite utiliser. Celle-ci change dès que des fonctionnalités sont
|
||||
ajoutées, à l'occasion d'une nouvelle version. Il n'est généralement pas
|
||||
nécessaire de mettre à jour cette version dans les programmes que vous
|
||||
développez car l'API est rétro-compatible : les anciennes versions de l'API
|
||||
restent accessibles.
|
||||
|
||||
Pour réaliser cet exercice, vous pouvez utiliser le langage de votre choix, en
|
||||
utilisant des outils ou des bibliothèques cohérents avec l'objectif recherché :
|
||||
dialoguer avec l'API.
|
||||
|
||||
Si vous êtes à l'aise en Python ou en Go, vous devriez utiliser les SDK
|
||||
officiels :
|
||||
|
||||
- Python : <https://docker-py.readthedocs.io/en/stable/client.html>,
|
||||
- Go : <https://pkg.go.dev/github.com/docker/docker/client>.
|
||||
|
||||
Pour le C, C#, C++, Clojure, Dart, Erlang, Gradle, Groovy, Haskell, Java,
|
||||
NodeJS, Perl, PHP, Ruby, Rust, Scala, Swift, des SDK plus ou moins complets
|
||||
sont disponibles :\
|
||||
<https://docs.docker.com/engine/api/sdk/#unofficial-libraries>
|
||||
|
||||
Mais pas de panique si cela ne vous convient pas, l'API est assez succincte et
|
||||
très bien documentée. N'importe quel langage dans lequel il vous est aisé de
|
||||
faire des requêtes HTTP et parser du JSON fait très bien l'affaire, y compris
|
||||
en shell.
|
||||
|
||||
Retrouvez la documentation de l'API ici :\
|
||||
<https://docs.docker.com/engine/api/latest/>
|
|
@ -6,7 +6,7 @@ Rendu
|
|||
Est attendu d'ici le cours suivant :
|
||||
|
||||
- votre `Dockerfile` et son *entrypoint* pour dépôt `youp0m` ;
|
||||
- ce mini-projet ;
|
||||
- le [mini-projet numéro 2](https://virli.nemunai.re/2-project.pdf) ;
|
||||
- vos réponses à [l'évaluation du cours](https://virli.nemunai.re/quiz/34).
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue