我尝试docker-machine create -d none --url tcp://<ipaddr>:2376 remote将{ca,key,cert}.pem(客户端证书)复制到计算机目录中.然后我做了eval "$(docker-machine env remote)"哪个导致了这个错误:
open /Users/uetchy/.docker/machine/machines/remote/server.pem: no such file or directory
Run Code Online (Sandbox Code Playgroud)
即使客户端密钥已经存在,我也很困惑他们为什么需要server.pem.
如何避免将关键问题server.pem放在本地计算机上?
我在MacOS中启动了一个docker-machine,在我进入它并创建一些容器后,一切运行正常.我可以看到一切正常工作,甚至抨击容器仍然很好,开始时没有错误.
我的问题后来发生了,因为一段时间后我把自己ssh进了机器,我一遍又一遍地重复这个错误.如果我把自己留在码头工人的容器里足够长时间,这种情况甚至会发生.
这里发生了什么?
示例图片
临时解决方案:退出并重新进入docker-machine
有一些功能,比如没有https的JavaScript服务工作者,只能在localhost上运行,但是当我在docker容器中运行我的app时,使用docker-compose,它运行在docker-machine之上,我需要使用它连接到它我得到的地址
docker-machine ip default
Run Code Online (Sandbox Code Playgroud)
有没有办法映射localhost到该IP?
执行后;
eval $(docker-machine env mymachine)
Run Code Online (Sandbox Code Playgroud)
如何检查docker守护程序mymachine是否为群集管理器?
我正在运行一台Windows7(64位)机器vmplayer,它有主机Fedora 25.
我安装docker CE了它,我的例子到现在都运行良好.
问题在于尝试运行docker-machine示例.根据我的理解,需要为docker创建主机.
虽然是有意义的有它Windows和Mac,但我需要它Linux?
甚至更令人困惑的是,为什么我到目前为止尝试的所有例子都运作良好?
另一点是,如果docker-machine不是Linux码头分布的一部分; 那么我们如何创建多个docker主机Linux?
我遇到的错误是,我想在 Docker 机器中执行“更改目录”命令,但每次在 Dockerfile 中执行 RUN 指令时,它都会删除实际容器(中间容器)。
Dockerfile
当我从上面执行 Dockerfile 时会发生这种情况
我怎样才能阻止 Docker 这样做呢?
我在Windows机器上开机,并通过docker-machine使用docker.由于来自@VonC的帮助,能够实现从windows dev文件夹到docker容器的文件夹共享.
我想用于Java开发的IDE是Eclipse.但我不想在我的主机上安装整个java系统.由于我的主机是Windows(不是X系统),因此无法使用此处提到的X11套接字共享内容 将Eclipse安装到Java所在的容器中.
因此,如果我的代码驻留在我的主机中并且整个java子系统位于docker容器中,Eclipse是否能够构建代码?有没有人在非Linux(最好是Windows)主机上工作,使用Eclipse IDE来构建java应用程序,使用java docker镜像来保存所有东西.
我有使用docker-compose启动docker的问题.
当我运行docker-compose -f dev.yml build我跟随错误>
Building postgres
ERROR: Couldn't connect to Docker daemon - you might need to run `docker-machine start default`.
Run Code Online (Sandbox Code Playgroud)
但是,如果我运行docker-machine ls机器显然是>
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default - virtualbox Running tcp://192.168.99.100:2376 v1.12.1
Run Code Online (Sandbox Code Playgroud)
我通过运行修复了错误,eval "$(docker-machine env default)"之后docker-compose -f dev.yml build成功完成.
我的问题为什么这个工作,实际发生了什么以及如何撤消它?
这也是一种安全的解决方法吗?现在这只是我的笔记本电脑,但这些容器应该在不久的将来打到公司的服务器.
我对bash并不是非常流利,但我总是被告知不要跑eval,特别是不要用"
为每台机器做一个docker-machine ls意想不到Unable to query docker version: Get https://x.x.x.x:2376/v1.15/version: x509: certificate has expired or is not yet valid的事情.
我最近没有做任何事情.看着SO,我尝试了一些常见的罪魁祸首,VPN,病毒,奇怪的时钟问题等等.如何修复使它们再次可用(通过docker-machine界面)?
使用Docker for Mac,17.12.0-ce-49
我刚刚安装了 docker,然后尝试运行hello-world程序。我的服务器在公司代理后面。因此,我根据 docker 手册在名为 的文件中设置了代理环境变量/etc/systemd/system/docker.service.d/http-proxy.conf:
[Service]
Environment="HTTP_PROXY=http://username:password@server:8080"
Environment="HTTPS_PROXY=https://username:password@server:8080"
Environment="NO_PROXY=localhost,127.0.0.1,localaddress,.localdomain.com"
Run Code Online (Sandbox Code Playgroud)
但是,在运行时$ sudo docker run hello-world。我收到错误
Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get https://registry-1.docker.io/v2/: proxyconnect tcp: tls: first record does not look like a TLS handshake.
See 'docker run --help'.
Run Code Online (Sandbox Code Playgroud)
这是docker version:
Client: Docker Engine - Community
Version: 19.03.9
API version: 1.40
Go version: go1.13.10
Git commit: 9d988398e7
Built: Fri May 15 00:25:34 2020
OS/Arch: linux/amd64
Experimental: false
Server: …Run Code Online (Sandbox Code Playgroud) docker-machine ×10
docker ×9
bash ×1
dockerfile ×1
eclipse ×1
java ×1
linux ×1
localhost ×1
macos ×1
windows ×1