#IBMCloudPrivate X509:certificate signed by unknow authority - docker

I still have this issue. I have docker version 17.12.0-ce-mac49 (21995). I am running IBM Cloud Private on 4 VMs with docker version on Ubuntu 16. When I run docker version on my master node I get the following:
Client:
Version: 17.12.0-ce
API version: 1.35
Go version: go1.9.2
Git commit: c97c6d6
Built: Wed Dec 27 20:11:19 2017
OS/Arch: linux/amd64
Server:
Engine:
Version: 17.12.0-ce
API version: 1.35 (minimum version 1.12)
Go version: go1.9.2
Git commit: c97c6d6
Built: Wed Dec 27 20:09:53 2017
OS/Arch: linux/amd64
Experimental: false
On my mac if I run the command:
docker login mycluster.icp:8500
I login with my user id and password and get the following response:
Error response from daemon: Get https://mycluster.icp:8500/v2/: x509: certificate signed by unknown authority
I am trying to load a docker image into IBM Cloud Private and I get the same error. Any help would be greatly appreciated.

You need to copy the ICP registry certificate to you host that you want to push image. You can refer below ICP documentation for details.
https://www.ibm.com/support/knowledgecenter/en/SSBS6K_2.1.0/manage_images/configuring_docker_cli.html

Related

docker: failed to register layer: re-exec error: exit status 1: output: ProcessBaseLayer . The system cannot find the path specified

Am trying to pull an image from docker hub.
docker pull zuehlke/shiny
And am facing below error:
docker: failed to register layer: re-exec error: exit status 1: output: ProcessBaseLayer C:\ProgramData\Docker\windowsfilter\d2dab1878cf591d869d33aa2c4cd410cd92614a44c776041c506fc765c1a98f1: The system cannot find the path specified.
Am having Docker for Windows:
docker version
Client:
Version: 17.09.0-ce
API version: 1.32
Go version: go1.8.3
Git commit: afdb6d4
Built: Tue Sep 26 22:40:09 2017
OS/Arch: windows/amd64
Server:
Version: 17.09.0-ce
API version: 1.32 (minimum version 1.24)
Go version: go1.8.3
Git commit: afdb6d4
Built: Tue Sep 26 22:50:27 2017
OS/Arch: windows/amd64
Experimental: true
Thanks in Advance
You have selected Windows Containers at the time of setup rather than Linux Containers so only Windows-based images will run. To resolve this, right-click the tray icon and select 'Switch to Linux Containers' and it will start working.
you must activate the virtualization service.
you must use this command taskmgr and click performance on windows to verify if it is activated :

Named stage returns: Error parsing reference: "golang:1.7.3 as builder" is not a valid repository/tag

On Gentoo Linux kernel 4.12.12
added docker info and version below
docker info : https://pastebin.com/Ph9ibMna
> docker version
Client:
Version: 17.06.2-ce
API version: 1.27 (downgraded from 1.30)
Go version: go1.8.3
Git commit: cec0b72
Built: Thu Sep 28 07:14:33 2017
OS/Arch: linux/amd64
Server:
Version: 17.03.2-ce
API version: 1.27 (minimum version 1.12)
Go version: go1.8.3
Git commit: f5ec1e2
Built: Wed Sep 13 23:43:20 2017
OS/Arch: linux/amd64
Experimental: false
command:
> docker build -t some-test .
Sending build context to Docker daemon 234.9MB
Step 1/1 : FROM golang:1.7.3 as builder
Error parsing reference: "golang:1.7.3 as builder" is not a valid repository/tag: invalid reference format
from Dockerfile:
FROM golang:1.7.3 as builder
example taken from name-your-build-stages
The issue is your client is 17.06.2-ce and server is 17.03.2-ce. Multi stage build came in 17.06 i believe, so you need that version on the server. It is the server that processes the build. The client will only send the information to the server
So upgrade your server and it will work fine

"docker pull redis" fails on Docker for Windows

I've installed Docker EE for Windows Server 2016 and was able to pull and run the hello-world example.
When I invoke "docker pull redis" , I get:
Using default tag: latest
latest: Pulling from library/redis
no matching manifest for windows/amd64 in the manifest list entries
My docker versions:
Client:
Version: 17.10.0-ee-preview-2
API version: 1.32
Go version: go1.8.3
Git commit: 10e292d
Built: Thu Sep 21 19:58:53 2017
OS/Arch: windows/amd64
Server:
Version: 17.10.0-ee-preview-2
API version: 1.32 (minimum version 1.24)
Go version: go1.8.3
Git commit: 777d4a1
Built: Thu Sep 21 20:08:05 2017
OS/Arch: windows/amd64
Experimental: false
Not sure what I'm doing wrong here.
As the docker info shows, the server is not started in experiemental mode.
You need to start docker server with experiemental mode on windows server. Check linux-containers-on-windows to see how you can do that.

docker private registry change from v1 to v2 while pulling an image

There is a docker is registry v2.
An image is pushed to docker private registry. Able to see it using curl command:
$ curl -s -X GET http://<registry>:<port>/v2/<image>/tags/list
{"name":"<image>","tags":["latest"]}
However, not able to pull the image from other machines. It appears that it is trying to pull from v1 instead of v2
Pulling the above image on a windows 10 machine.
docker pull <registry>:<port>/<image>:latest
Getting the following error:
Pulling repository <registry>:<port>/<image>
Network timed out while trying to connect to
http://<registry>:<port>/v1/repositories/<image>/images.
You may want to check your internet connection or if you are behind a proxy.
Not using any proxy settings.
Here is version details
Client:
Version: 17.03.1-ce
API version: 1.27
Go version: go1.7.5
Git commit: c6d412e
Built: Tue Mar 28 00:40:02 2017
OS/Arch: windows/amd64
Server:
Version: 17.03.1-ce
API version: 1.27 (minimum version 1.12)
Go version: go1.7.5
Git commit: c6d412e
Built: Fri Mar 24 00:00:50 2017
OS/Arch: linux/amd64
Experimental: true
Could not found any docker settings for changing from v1 to v2.
How do I make it to pull from v2 / resolve the above error?
EDIT: log shows
ICMP Destination Unreachable: Destination port unreachable

Can't get Docker image after windows installation

I just installed docker on my windows 10 server,
Installation went fine but I can't seem to get images from central docker repo.
those are my specs:
c:\>docker version
Client:
Version: 1.13.0
API version: 1.25
Go version: go1.7.3
Git commit: 49bf474
Built: Wed Jan 18 16:20:26 2017
OS/Arch: windows/amd64
Server:
Version: 1.13.0
API version: 1.25 (minimum version 1.12)
Go version: go1.7.3
Git commit: 49bf474
Built: Wed Jan 18 16:20:26 2017
OS/Arch: linux/amd64
Experimental: true
This is my test command:
c:\>docker run hello-world
Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get https://registry-1.docker.io/v2/: remote error: tls: access denied.
See 'docker run --help'.
This is what I get when running curl on that repo:
c:\>curl -k https://registry-1.docker.io/v2/
{"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":null}]}
I guess that there is something to do with my company DNS/Network,
did anyone encounter this issue on windows?
You need to set your proxy env variables.
[Environment]::SetEnvironmentVariable("HTTP_PROXY", "http://username:password#proxy:port/", [EnvironmentVariableTarget]::Machine)
Restart-Service docker
Check this for reference: https://learn.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/configure-docker-daemon
And more common:
https://docs.docker.com/engine/admin/systemd/#http-proxy
As I replied to #Falco Alexander I got some PowerShell errors, But The proxy was already set in my env. variables.
What finally did the trick was to set the proxy inside the docker GUI:
And then restart the service.

Resources