问题标签 [docker]

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 回答
2906 浏览

docker - 具有多个日志源的 Docker 容器

假设我有一个容器,其中包含运行 Web 应用程序所需的一切(例如https://github.com/grigio/docker-stringer)。我将如何检查不同服务(Web 服务器、应用程序服务器、数据库服务器)的日志?到目前为止,在所有教程中,我只能在启动容器时查看特定命令运行的日志。

0 投票
3 回答
19903 浏览

docker - Docker 命令在构建期间失败,但在正在运行的容器中执行时成功

命令 :

下面的 Dockerfile :

在最后一行失败(./configure ...)

如果我删除最后一行并在容器中运行 bash,然后手动执行最后一行,它就可以工作。

我希望当命令附加在 Dockerfile 中(以 RUN 为前缀)时,在容器中成功运行的任何命令都应该可以工作

我错过了什么吗?

0 投票
2 回答
63605 浏览

docker - Docker : RUN cd ... 没有按预期工作

以下 Dockerfile :

有输出:

构建时(docker build 命令)

看来 RUN cd tmp123 没有效果

为什么 ?

0 投票
15 回答
248292 浏览

docker - 是否可以在正在运行的容器中启动 shell 会话(没有 ssh)

我天真地期待这个命令在一个正在运行的容器中运行一个 bash shell:

看起来不可能,我收到错误消息:

因此,如果我想在正在运行的容器中运行 bash shell(例如,用于诊断目的)

我是否必须在其中运行 SSH 服务器并通过 ssh 登录?

0 投票
1 回答
3011 浏览

linux - 如果内核库发生变化,Docker 如何允许可移植容器

如果我的程序依赖于内核库的某个函数,而该函数又具有一系列依赖关系,那么 docker 如何在不拍摄所有内核库快照的情况下保持小型和可移植性(以及在函数而不是库中管理依赖问题等级)?换句话说,它如何使自己免受内核库从一个版本到下一个版本的变化的影响,并且它是在库或函数粒度上这样做的吗?

另外,如果我的应用程序有一个软件堆栈,例如其中一个函数与内核库 A 的未来版本兼容,而使用内核库 A 的第二个函数不再兼容,该怎么办。换句话说:

函数 1 和 2 都依赖并使用内核 Lib A 1.0 版中的函数

功能 1 与 Lib A 1.1 版一起使用 功能 2 与 Lib A 1.1 版中断(功能 2 仍然需要 Lib A 1.0 版)

我对 Docker 了解不多,所以这是一个新手问题。

0 投票
3 回答
4750 浏览

linux - Docker 容器对 memcached 实例有什么好处?

Docker 示例之一是针对配置了 Memcached 的容器。我想知道为什么有人会想要这个而不是配置了 Memcached 的 VM?我猜想在同一主机下运行多个 memcached docker 容器是没有意义的,唯一真正的优势是在 docker 容器中“启动”memcached 堆栈与通过 VM 进行 Memcached 相比的速度优势. 这个对吗?

另外,如何在 docker 容器中设置 memcached 使用的内存?如果在一个主机下有两个或多个带有 Memcached 的 docker 容器,这将如何工作?(我再次假设两个或更多没有意义)。

0 投票
1 回答
327 浏览

nat - 使用没有内置 NAT 功能但有 DHCP 的 Docker.io

我无法在我的设置中使用 docker 的 NAT 网络。相反,我不想使用 DHCP 配置的 IP 或允许 docker 从预配置的范围中动态选择 IP。

这可能吗?我认为 NAT 是一个非常糟糕的主意,不应该在生产中使用。

0 投票
3 回答
19623 浏览

docker - 如何管理docker镜像依赖(维护)

使用 docker,您可以非常好地基于其他图像创建图像。例如,您可以制作一个图像 Java-jdk7(基于最新的 Ubuntu LTS),并在此基础上创建图像 elastic-search 和 tomcat7(两者都需要 java)。

所以,如果我不标记我的图像,我最终会得到以下内容(摘录docker images):

现在来回答这个问题。我如何/应该保持这种依赖关系?我如何执行维护一个 1 图像和从属图像以及?

  1. 如果我更新我的 jdk 映像(apt-get upgrade例如),我假设我没有损坏依赖映像?但是,我还假设依赖关系树不再像您期望的那样。[更新:我已经复制了这个,所以请看下面我自己的答案]
  2. 如果 1 是正确的,有什么方法可以让依赖图像将自己标记为过时,并且(希望)让它们重建自己?

或者是用版本号标记容器,并手动重建和重新分配所有依赖项并增加版本号标记的方法?这意味着需要更改 Dockerfile 以进行更新。

更新:我在他们的演示文稿中的 docker 网站上找到了以下图片。但是,我不太确定如何执行此操作的步骤(尤其是我描述的对其他图像的依赖)。

docker 容器的更新流程

0 投票
2 回答
1795 浏览

cuda - 与 docker 容器共享 CUDA 库

我正在使用 docker 来启动隔离的应用程序。我的应用程序将使用 CUDA 库进行 GPGPU 计算。我正在考虑构建一个安装了 cuda 的图像,但这会使它变得太大。我也不确定 CUDA 显示驱动程序安装是否会在 docker 映像上成功完成。

更好的方法是与容器共享机器上的 CUDA 库,有没有办法做到这一点?

谢谢你,普雷迪普。

0 投票
5 回答
108065 浏览

docker - Docker 为 lxc-tools(用户空间 LXC 工具)添加了什么?

如果你看一下 Docker 的特性,其中大部分已经由 LXC 提供。

那么 Docker 增加了什么?为什么我要使用 Docker 而不是普通的 LXC?