Docker : ERROR: Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority

322 x served & 250 x viewed

Voici mon erreur :

$ sudo docker-compose up -d
Pulling db (library/mariadb:10.0.23)...
ERROR: Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority

Pour fixer le problème, j’ai fait :

$ sudo update-ca-certificates --fresh
...
$ openssl s_client -showcerts -verify 5 -connect registry-1.docker.io:443 < /dev/null 2>/dev/null | openssl x509 -outform PEM | tee ~/docker.crt
...
$ openssl s_client -showcerts -verify 5 -connect production.cloudflare.docker.com:443 < /dev/null 2>/dev/null | openssl x509 -outform PEM | tee ~/docker-com.crt
...
$ sudo cp ~/docker-com.crt /usr/local/share/ca-certificates/.
...
$ sudo cp ~/docker.crt /usr/local/share/ca-certificates/
...
$ sudo update-ca-certificates
...
$ sudo service docker restart

Ensuite cela a fixé mon problème … provisoirement :

$ docker-compose up -d
Pulling db (library/mariadb:10.0.23)...
10.0.23: Pulling from library/mariadb
7268d8f794c4: Downloading
a3ed95caeb02: Downloading
e5a99361f38c: Downloading
20b20853e29d: Downloading
9dbc63cf121f: Downloading
fdebb5c64c6c: Downloading
38152cd1ae2a: Downloading
d7f1267eb179: Downloading
cb5b075a9692: Downloading
d65a44f4573e: Downloading
ERROR: x509: certificate signed by unknown authority

Jenkins & Docker : /usr/bin/cat: cannot execute binary file

255 x served & 87 x viewed

J’ai donc eu l’erreur : « /usr/bin/cat: cannot execute binary file » , pour voir l’erreur j’ai demandé les logs sur le container lancé par Jenkins.

$ docker logs f5e6fcc16971b888f8609f6436e18fbb8e313114878a15b916eeedd6b780f979
/usr/bin/cat: /usr/bin/cat: cannot execute binary file

Ensuite j’ai essayé de comprendre le problème dans ma pipeline ….

A la base j’avais :

pipeline {
   agent {
       docker {
           image 'my_image'
           args ' --name jenkins_my_image -u root --privileged=true -v /home/BUILD:/root/BUILD'
       }
   }
   ....

Et il fallait mettre :

pipeline {
   agent {
       docker {
           image 'my_image'
           args '--entrypoint="" --name jenkins_my_image -u root --privileged=true -v /home/BUILD:/root/BUILD'
       }
   }
   ....

Sachant que cela ne fonctionnait pas avec :

pipeline {
   agent {
       docker {
           image 'my_image'
           args '--entrypoint="/sbin/bash" --name jenkins_my_image -u root --privileged=true -v /home/BUILD:/root/BUILD'
       }
   }
   ....

Suivant les OS des containers le problème n’est pas visible, le problème est visible avec des anciens OS.

A suivre.

Docker sous Windows 10 : Cela commence mal !

En passant

537 x served & 91 x viewed

Pendant l’installation j’ai eu ce message d’erreur :

Le processus ne peut pas accéder au fichier 'C:\Program Files\Docker\Docker\Bugsnag.dll', car il est en cours d'utilisation par un autre processus.
   à System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   à System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   à System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
   à LightweightInstaller.UnpackArtifactsStep.<DoAsync>d__23.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à LightweightInstaller.InstallWorkflow.<HandleD4WPackage>d__19.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à LightweightInstaller.InstallWorkflow.<ProcessAsync>d__18.MoveNext()

Et il refuse de se lancer …. la version mise en place : « Docker for Windows      Docker Inc.          258 Mo 17.09.1-ce-win42 »

Je vais donc attendre la prochaine version : https://docs.docker.com/docker-for-windows/install/#download-docker-for-windows . Heureusement que j’avais choisi « Stable channel » …

A suivre.

 

Installation de Docker CE pour Mac

504 x served & 141 x viewed

Docker CE pour Mac : https://store.docker.com/editions/community/docker-ce-desktop-mac?tab=description .

L’installation est réellement très simple :

La version de mon Mac :

Vu que l’application n’est pas sur l’Apple Store on a ce message :

Ensuite on doit donner les droits :

Et c’est fini :

Quelques petits tests de base :

MacBook-Pro-de-XXXXX:~ XXXX$ docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: 17.03.0-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins: 
 Volume: local
 Network: bridge host ipvlan macvlan null overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 977c511eda0925a723debdc94d09459af49d082a
runc version: a01dafd48bc1c7cc12bdb01206f9fea7dd6feb70
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.12-moby
Operating System: Alpine Linux v3.5
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 1.952 GiB
Name: moby
ID: 35LH:CVLU:E67K:YRGX:G6CL:P7GM:GWTZ:OISQ:MCNP:PT3B:NJZV:67SO
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 16
 Goroutines: 26
 System Time: 2017-03-16T07:38:58.167444065Z
 EventsListeners: 1
No Proxy: *.local, 169.254/16
Registry: https://index.docker.io/v1/
Experimental: true
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false



MacBook-Pro-de-XXXX:~ XXXXX$ docker version
Client:
 Version:      17.03.0-ce
 API version:  1.26
 Go version:   go1.7.5
 Git commit:   60ccb22
 Built:        Thu Feb 23 10:40:59 2017
 OS/Arch:      darwin/amd64

Server:
 Version:      17.03.0-ce
 API version:  1.26 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   3a232c8
 Built:        Tue Feb 28 07:52:04 2017
 OS/Arch:      linux/amd64
 Experimental: true


MacBook-Pro-de-XXXX:~ XXXX$ docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
78445dd45222: Pull complete 
Digest: sha256:c5515758d4c5e1e838e9cd307f6c6a0d620b5e07e6f927b07d05f6d12a1ac8d7
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://cloud.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/

Celebration of Docker’s 4th Birthday à Sophia-Antipolis

599 x served & 66 x viewed

Comme toujours une très bonne organisation. Le programme était :

13:30: Doors Open
14:00 - 14h30: Welcome message, presentation of Docker and guidelines for the event
14:30 - 17:00: Working session
17:00 - 18:00: Cake and Socializing!
18:00 - 19h30: Talks / presentations
19:30 – 20h30: Pizza time

Les labs : http://birthday.play-with-docker.com

Les training : https://training.docker.com/category/self-paced-online