标签: docker-for-mac

什么是linux相当于"docker.for.mac.host.internal"

在Mac和Windows上,可以在容器内使用docker.for.mac.host.internal(替换docker.for.mac.localhost)和docker.for.win.host.internal(替换docker.for.win.localhost).

是否有一个Linux将开箱即用而不传递env变量.

docker docker-for-windows docker-for-mac docker-desktop

22
推荐指数
10
解决办法
2万
查看次数

你如何解决Docker for Mac中Docker.qcow2的大小限制?

我有一个大型(100gb +)数据库,我正在尝试使用官方postgres图像运行.

我无法将数据存储在docker卷中,因为~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.qcow2Docker for Mac中的文件大小限制为大约60gb.

我对将主机目录挂载为卷犹豫不决,因为挂载的主机目录卷中的文件访问速度比常规卷慢得多.

这些是一些有用的链接,可以更详细地讨论这些问题:

  • 讨论了Docker.qcow2文件的大小限制
  • 也讨论了Docker.qcow2文件的大小限制
  • 将讨论挂载的主机目录卷速度问题
  • 给出了如何用一个可以变大的文件替换Docker.qcow2文件的很好的描述
  • 讨论了Docker.qcow2文件如何在其内容被删除时不缩小(这不是直接相关的,但可能会使问题进一步复杂化)

你们都吃速度损失并挂载主机目录吗?你手动创建一个qcow文件,可以用qemu增大(如果这样做,你需要在升级之间维护这个文件)吗?你还有别的办法处理这个问题吗?

postgresql macos docker docker-for-mac

21
推荐指数
1
解决办法
4792
查看次数

docker swarm init无法选择IP地址错误

与尝试多克群码头工人Mac版桌面.我试过这个:

docker-machine create -d virtualbox node-1
docker-machine create -d virtualbox node-2
docker-machine create -d virtualbox node-3

eval $(docker-machine env node-1)

docker swarm init \
    --secret my-secret \
    --auto-accept worker \
    --listen-addr $(docker-machine ip node-1):2377
Run Code Online (Sandbox Code Playgroud)

最后一个命令(docker swarm init)返回此错误:

来自守护程序的错误响应:无法选择要广告的IP地址,因为此系统具有多个地址

我不知道是怎么回事.任何人都知道如何调试?

docker docker-swarm docker-machine docker-for-mac docker-desktop

18
推荐指数
5
解决办法
2万
查看次数

docker: 来自守护进程的错误响应:挂载被拒绝:批准 /path/to/file 不存在

我的码头命令:

docker run -it --rm -v $(pwd):/mutcompute ens_net:v3
Run Code Online (Sandbox Code Playgroud)

给了我以下错误:

docker: Error response from daemon: Mounts denied: approving /Users/danny/Documents/Codes/Python/net_containers/ensemble_net: file does not exist.
Run Code Online (Sandbox Code Playgroud)

但是,我在同一个目录中使用了这个相同的命令超过 6 个月了。它只是在当前 docker 容器中打开我的目录,以便我可以运行我预装的软件。

今天我的 docker 更新到版本 3.0.0 (MacOS)。

我假设这是由于更新?

我已经重新启动了 docker 并重新启动了我的计算机。仍然不起作用。

docker docker-for-mac

18
推荐指数
1
解决办法
6295
查看次数

Docker for Mac(Edge) - Kubernetes - 参考本地图像

我正在使用docker for mac 18.05.0-ce-mac66(24545)(边缘)和Kubernetes支持,我正在努力创建引用本地构建映像的kubernetes部署.

产量docker images: kubectl apply -f deplyment.yaml

我的deployment.yaml: kubectl describe

当我运行docker imagespods时,会创建但是:

kubectl apply -f deplyment.yaml

描述其中一个豆荚给出: kubectl describe

有趣的是,如果我尝试运行在dockerhub上托管的一些图像,那么一切都很好,我也尝试使用skaffold,它也可以作为一个魅力......

我看到一些关于minikube的类似问题,其中解决方案是使用minikube docker deamon来构建图像,以便可以从kubernetes集群中引用它们.我想避免设置本地回购,但我怎样才能使它与Docker Edge Kubernetes一起使用?

kubernetes docker-for-mac

14
推荐指数
2
解决办法
6544
查看次数

失败:端口已经分配

我使用Docker在macOS Sierra 10.12.2上运行Oracle 11g Express

https://github.com/wnameless/docker-oracle-xe-11g

这是我的错误:

Last login: Sat Jan  7 22:42:11 on ttys000
?  ~ docker run -d -p 49160:22 -p 49161:1521 wnameless/oracle-xe-11g
docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
See 'docker run --help'.
?  ~ docker run -d -p 49160:22 -p 49161:1521 wnameless/oracle-xe-11g
043d8caecbb45d6e2e5999b69a2f760c20d53ff3aa2fad78cb1eb70acb058a1f
docker: Error response from daemon: driver failed programming external connectivity on endpoint serene_lalande (08bb0bd9684c0f92db7b736986bf894d3a57a714324405823496d13e175e7491): Error starting userland proxy: Bind for 0.0.0.0:49161 failed: port is already …
Run Code Online (Sandbox Code Playgroud)

docker docker-for-mac

10
推荐指数
1
解决办法
2万
查看次数

xdebug无法在Docker Desktop for Mac中使用

在我从Docker Machine切换到适用于Mac的Docker Desktop之后,xdebug已停止工作.9000主机上的端口无法通过xdebug从容器中访问.
php.ini:

xdebug.remote_enable=1
xdebug.remote_port=9000
xdebug.remote_host=172.18.0.1
xdebug.idekey=PHPSTORM
Run Code Online (Sandbox Code Playgroud)

docker-compose.yml:

version: '2'
services:
  php:
    image: <image name>
    ports:
      - 80:80
    # - 9000:9000
    volumes:
      - .:/var/www/html
      - ./php.ini:/usr/local/etc/php/conf.d/php.ini
Run Code Online (Sandbox Code Playgroud)

xdebug.log:

I: Checking remote connect back address.
I: Checking header 'HTTP_X_FORWARDED_FOR'.
I: Checking header 'REMOTE_ADDR'.
I: Remote address found, connecting to 172.18.0.1:9000.
E: Could not connect to client. :-(
Run Code Online (Sandbox Code Playgroud)

Н要解决我的问题?

macos xdebug docker docker-for-mac docker-desktop

8
推荐指数
1
解决办法
4058
查看次数

无法在 docker 容器内访问 kubectl port-forward

假设有一个 pod(例如 postgres)在 kubernetes 中运行,kubectl port-forward pod 15432:5432则用于将 pod 暴露给主机。

通常,可以通过运行 postgres 客户端在主机中访问它:psql -h 127.0.0.1 -p 15432,或者通过访问http://127.0.0.1:15432,或者直接建立 TCP 连接:echo > /dev/tcp/127.0.0.1/15432 && echo yes。如果连接成功,kubectl 会提示Handling connection for 15432验证消息。

但是,无论是否使用该标志,都无法使用容器内的127.0.0.1/访问端口转发的 Pod。它只能通过172.17.0.1--network=hosthost.docker.internal

这可能是 docker for mac 特有的问题。我还没有在linux上验证过。

这是我在 docker 内运行连接测试时的日志。很明显,TCP连接无法建立。

$ docker run --network=host -it --rm postgres:12.4 /bin/bash

# inside container
# unsuccessful for establishing TCP connection to 127.0.0.1:15432
root@docker-desktop:/# echo > /dev/tcp/127.0.0.1/15432 && echo yes
bash: …
Run Code Online (Sandbox Code Playgroud)

macos networking docker kubernetes docker-for-mac

8
推荐指数
1
解决办法
3513
查看次数

如何在 Docker 上安装 tshark?

我想使用 Dockerfile 在 Docker for Mac 上的 ubuntu17.04 上安装 tshark。我正在使用 docker-compose

apt install tshark,有如下提示。
尽管我输入了提示停止安装yes

如何在 Dockerfile 中安装 tshark?

Dumpcap can be installed in a way that allows members of the "wireshark" system
group to capture packets. This is recommended over the alternative of running
Wireshark/Tshark directly as root, because less of the code will run with
elevated privileges.

For more detailed information please see
/usr/share/doc/wireshark-common/README.Debian.

Enabling this feature may be a security risk, so it …
Run Code Online (Sandbox Code Playgroud)

installation tshark docker dockerfile docker-for-mac

7
推荐指数
2
解决办法
5112
查看次数

docker 登录问题 - 等待连接时请求被取消

突然间,docker 在我的系统中显示了一个奇怪的问题。 docker login间歇性地失败并且docker pull根本不工作:(。

这是docker 登录成功但 docker pull 失败并出现错误的一个实例。

$ docker login
Authenticating with existing credentials...
Login Succeeded

$ docker pull cooldocker19/manas-simple-flask:latest
Error response from daemon: Head https://registry-1.docker.io/v2/cooldocker19/manas-simple-flask/manifests/latest: Get https://auth.docker.io/token?account=cooldocker19&scope=repository%3Acooldocker19%2Fmanas-simple-flask%3Apull&service=registry.docker.io: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
Run Code Online (Sandbox Code Playgroud)

当我从我的浏览器或邮递员尝试上述 url ( ref: https://auth.docker.io/token? ) 时,它会按预期返回正确的 access_token,但不确定为什么 docker daemon 无法获取它。

我关注了多个 docker/StackOverflow 线程,其中有几个人报告了这个问题。前任 :

在此处输入图片说明

我按照几个线程中的建议添加了以下 DNS,但没有任何帮助。在尝试了不同的设置并花费了超过 4/5 个小时后,我有点筋疲力尽。如果您知道如何解决此问题,请告诉我。

{
  "dns": [
    "8.8.8.8",
    "8.8.4.4"
  ]
}
Run Code Online (Sandbox Code Playgroud)

PN - 我可以从托盘图标登录到 …

dns docker docker-machine docker-for-mac docker-desktop

7
推荐指数
0
解决办法
2012
查看次数