当前位置: 首页 > 面试题库 >

如何为Docker容器正确指定IP

鄢雅畅
2023-03-14
问题内容

我正在尝试通过以下方式为我的docker容器明确指定IP地址:

sudo docker run -it -p 172.17.0.2:10000:10000 -p 9000:9000 -p 9090:9090 -v /home/eugene/dev/shared:/opt/shared -d eugene/dev_img_1.3

我收到以下错误:

Error response from daemon: Cannot start container b2242e5da6e1b701ba4880f25fa8d465d5f008787b49898ad9e46eb26e417e48: port has already been allocated

我真的不在乎端口10000。我的目标是选择一个特定的容器IP,并将端口9000和9090暴露给主机。

我看了其他一些问题,但没有看到明确的语法来做到这一点


问题答案:

-p参数用于将端口从容器转发到主机,而不用于分配IP。

没有简单的方法将固定IP分配给Docker容器,我强烈建议您不要尝试。而是重新架构您的系统,使其不依赖于固定IP。如果确实不可能,我认为您可以使用LXC执行驱动程序和各种标志来选择IP,但我强烈建议您这样做。



 类似资料:
  • 问题内容: 我过去经常查看特定容器的日志。 有清除这些日志的好方法吗? 问题答案: 从这个问题出发,您可以运行一种代码: 或有类似的truncate命令: 我对这两个都不满意,因为它们直接修改Docker的文件。当docker将json格式的数据写入文件时,可能会发生外部日志删除,导致部分行并破坏了从cli 读取任何日志的能力。 相反,您可以让Docker自动为您轮换日志。如果使用默认的JSON日

  • 问题内容: 我正在尝试链接2个单独的容器: nginx:最新 的PHP:FPM 问题是php脚本不起作用。也许php-fpm配置不正确。这是源代码,位于我的资源库中。这是文件: 以及我用来基于nginx构建自定义图片的图片: 最后,这是我自定义的Nginx虚拟主机配置: 有人可以帮助我正确配置这些容器以执行php脚本吗? PS 我像这样通过docker-composer运行容器: 从项目根目录。

  • 假设我有一个卷,我知道它的名称或id。 我想确定使用卷的容器列表(它们的名称或id)。 我可以使用什么命令来检索这些信息? 我认为它可以存储在docker volume inspect的输出中

  • 我想在docker容器中运行Jenkins实例。 我希望Jenkins本身能够将docker容器作为奴隶来运行测试。 似乎最好的方法是使用 来源 我使用的是 如果我在运行的容器中启动bash会话,并在图像上运行,我会得到 如果我以root用户身份运行bash会话 所以我猜我要添加Jenkins用户的组是内部docker的组,因此如果没有,套接字是不可读的。这是一个问题,因为Jenkins dock

  • 所以,我想做的是使用这里获得的开普勒数据对系外行星和非系外行星进行分类。数据类型是维度为(num_of_samples,3197)的时间序列。我发现这可以通过在Keras中使用1D卷积层来完成。但是我一直在弄乱维度并得到以下错误 检查模型输入时出错:预期conv1d_1_input有形状(无,3197,1),但得到了带有形状的数组(1, 570, 3197) 因此,问题是: 1.数据(traini