问题标签 [docker-desktop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1148 浏览

docker - Docker for windows - 无法连接到默认 iis 站点

我有一个运行 microsoft/iis 基本映像的 windows 容器,带有适用于 Windows 的 Docker Desktop

我使用以下内容构建了图像:

命令:

文件:

来自微软/iis

曝光 8080'

然后我使用以下命令运行容器:

命令:

我得到了容器的 IP 地址(例如 172.18.167.181)

添加了一条路线:

命令

然后尝试使用以下 url 连接到容器:

我期待看到默认的 IIS 网页,但我得到的是:

尝试检索 URL 时遇到以下错误: > > > http://172.18.167.181:8080/

连接到 172.18.167.181 失败。

系统返回:(110)连接超时

远程主机或网络可能已关闭。请重试该请求。

但是,当我 ping ip 地址时,它似乎找到了容器:

用 32 字节的数据 ping 172.18.167.181:

来自 172.18.167.181 的回复:bytes=32 time<1ms TTL=128

来自 172.18.167.181 的回复:bytes=32 time<1ms TTL=128

来自 172.18.167.181 的回复:字节=32 时间=1ms TTL=128

来自 172.18.167.181 的回复:bytes=32 time<1ms TTL=128

172.18.167.181 的 Ping 统计信息:

数据包:发送 = 4,接收 = 4,丢失 = 0(丢失 0%),以毫秒为单位的近似往返时间:

最小值 = 0 毫秒,最大值 = 1 毫秒,平均值 = 0 毫秒

0 投票
1 回答
3583 浏览

powershell - 如何读取 Dockerfile 中的 Powershell 变量?

我正在为 Windows映像构建 Docker Desktop。我尝试将变量传递给 Powershell 命令,但它不起作用。

Dockerfile

Docker 构建

预期结果

我可以通过使用 ENV 变量和可能的多阶段构建来解决此问题,以避免保留此变量:

0 投票
1 回答
312 浏览

c# - 修复 Docker 的 IP

我有几个微服务,每个都有一个单独的 Docker 容器。它在 CS 2017, Docker Desktop for Windows中。这些服务使用 Docker 分配的 IP 地址相互通信。问题是,在调试模式下,Visual Studio 中的项目每次我更改某些内容并构建项目时,docker 的 IP 都会发生变化,所以我必须通过代码并更改 IP,无论如何要修复 IP 或使用静态IP?

0 投票
1 回答
1235 浏览

docker - 如何使用 Docker Desktop for Windows 从主机连接到 Cassandra

我正在寻找一个开发测试环境,虽然我已经完成了大部分设置,但我很难从主机(运行 Visual Studio)连接到 docker 中的 Cassandra 集群(使用Docker Desktop for Windows)。我猜我只是弄乱了配置设置和/或缺少设置;但无法确定如何使这项工作(它确实适用于单个节点;只是不是多个节点,这是我想要使用的)

我有什么设置:

docker run --name tnode1 -d -e CASSANDRA_CLUSTER_NAME=tcluster -e CASSANDRA_DC=TDC1 -e CASSANDRA_RACK=TRAC1 -e CASSANDRA_BROADCAST_ADDRESS=10.0.75.2 -e CASSANDRA_ENDPOINT_SNITCH=GossipingPropertyFileSnitch cassandra

我也尝试过使用 -p 开关

docker run --name tnode1 -d -p 9042:9042 -e CASSANDRA_CLUSTER_NAME=tcluster -e CASSANDRA_DC=TDC1 -e CASSANDRA_RACK=TRAC1 -e CASSANDRA_BROADCAST_ADDRESS=10.0.75.2 -e CASSANDRA_ENDPOINT_SNITCH=GossipingPropertyFileSnitch cassandra

如果我将数据放入其中,然后从 Visual Studio 连接到 10.0.75.2,这似乎是可行的,一切都按我的预期工作。当我去添加另一个节点时,问题就来了。

我尝试了多种方法,但似乎它们都以第二个音符启动然后退出并且从未加入集群而告终。如果我在设置 tnode1 时遗漏了 CASSANDRA_BORADCAST_ADDRESS,那么集群可以工作,但我无法从 Visual Studio 访问它。

第二节点(一般信息)

docker inspect -f '{{ .NetworkSettings.IPAddress }}' tnode1 返回 172.17.0.2 docker exe -it tnode1 nodetool status 的地址为 10.0.75.2

第二个节点(尝试 1)

docker run --name tnode2 -d -e CASSANDRA_CLUSTER_NAME=tcluster -e CASSANDRA_DC=TDC1 -e CASSANDRA_RACK=TRAC1 -e CASSANDRA_SEEDS=172.17.0.2 ca ssandra 结果:运行 nodetool 状态不显示 tnode2 ... running docker ps -a状态显示“Exited (3) 30 seconds ago”

第二个节点(尝试 2)

docker run --name tnode2 -d -e CASSANDRA_CLUSTER_NAME=tcluster -e CASSANDRA_DC=TDC1 -e CASSANDRA_RACK=TRAC1 -e CASSANDRA_SEEDS=10.0.75.2 ca ssandra 结果:运行 nodetool 状态不显示 tnode2 ...正在运行 docker ps -a状态显示“Exited (3) 28 seconds ago”

似乎种子值没有连接,然后新节点因此停止。同样,如果我取出广播地址,则节点创建工作,但我无法从主机连接;我尝试在创建 tnode1 时添加侦听器地址和 -p 参数,但结果相似。

任何帮助将不胜感激。

0 投票
3 回答
18388 浏览

docker - Docker Run 命令挂起,没有任何错误

在过去的两周里,我一直在 Windows Server 2016 中使用 docker。我正在尝试使用运行 html 文件

在我执行命令后

执行挂起并且不返回。

请帮助这是图片参考:

错误

0 投票
12 回答
26051 浏览

docker - 适用于 Windows 的 Docker Desktop:此系统上不存在管理程序

我是Docker Desktop for Windows 的新手。当我按照这个尝试 hello world 示例时出现错误。更新

以下是我遵循的步骤:

1安装 Docker for Windows,稳定版

2我的 Windows 10 上已启用 Hyper-V 和虚拟化

但是,切换到 Linux 容器时出现以下错误:

发生错误。必须在 BIOS 中启用硬件辅助虚拟化和数据执行保护。请参阅https://docs.docker.com/docker-for-windows/troubleshoot/#virtualization-must-be-enabled

请注意这篇文章中的问题是在使用 Windows 容器时发生的。第 3 步是使用 Windows 容器,而不是 Linux。

3尝试 hello world 时出现以下错误

系统信息如下:

Windows 10 专业版 1709

任何想法?

更新

更新 2

仍然得到同样的错误,知道吗?

0 投票
2 回答
27752 浏览

docker - Docker:为什么在 Windows 上使用 Linux 容器?

我使用 Win 10 Pro N(版本 1709)作为开发机器,使用 Windows Server 2016 Standard(版本 1607)作为生产服务器。

我目前正在开发一个使用 MongoDb 作为数据库的 ASP.NET Core 2 应用程序。

几天前,我第一次偶然发现了将 MongoDb 作为 Docker 映像运行的想法。

到目前为止,我对 Docker 没有任何经验,但我设法从 Linux 容器(默认)切换到Windows 机器上的 Windows 容器。

这是一个好的决定吗?或者我有什么理由在我的场景中使用 Linux 容器而不是 Windows 容器?

例如,如果我决定在某个时候将我的应用程序部署到 Linux 服务器上怎么办?在这种情况下,从一开始就使用 Linux 容器会更明智吗?

0 投票
0 回答
2285 浏览

docker - RabbitMQ Docker 容器错误:读取 /var/lib/rabbitmq/.erlang.cookie 时出错:eacces

rabbitmq在 Windows Server 1709(Windows Server 核心版)上的 Docker 中运行时遇到问题。

我正在使用 docker-compose 创建 rabbitmq 服务。如果我在本地计算机上运行 docker-compose,一切正常。当我在 Windows 服务器上运行 docker-compose 时(其中 docker 已设置为 windows 上的 docker lcow 支持),我在日志中多次出现上述错误。即这个错误是:

读取 /var/lib/rabbitmq/.erlang.cookie 时出错:eacces

值得注意的是,即使我只是手动拉取 rabbitmq 并手动运行,我也会收到此错误 docker run -itd --rm --name rabbitmq rabbitmq:3-management

在它崩溃并退出之前,我可以在容器中猛击一会儿,然后我看到以下内容:

在我的本地主机上,权限如下所示(正确):

我不明白为什么服务器上的权限结构被破坏了。

这是否可能是 Windows Server 1709 与 Docker for Windows 上的 LCOW 支持的问题?还是rabbitmq的问题?

此处参考使用的 docker compose 文件:

此处参考是发生错误的 docker 信息。

docker info

docker version

0 投票
2 回答
5933 浏览

asp.net - Docker Windows Container 403 - 禁止访问:拒绝访问

我在我的 中使用以下脚本创建了一个图像Dockerfile,但是当我使用容器的 IP 地址和端口(2000)浏览时,我得到一个 403 - Forbidden: Access is denied。我正在使用 Windows 10.0.14393 Build 14393, Docker Desktop for Windows。该项目是一个包含 Nancy、Entity Framework、AngularJS 和 SQL Server 项目的 ASP.NET 解决方案。我是否需要对我的 IIS、Docker、Powershell 等进行任何配置更改?我的 Dockerfile 脚本是:

0 投票
2 回答
4107 浏览

docker - 詹金斯 + 码头工人 + Windows

我目前正在Jenkins 2.89.3使用Docker 17.12.0-ce-win47Linux 容器在 Windows 10 上运行。

我正在尝试运行以下 Jenkins 文件

但是,我在 Jenkins 中收到以下错误:

我应该怎么办?