将 python 与在 docker 中运行的 h2o 连接,但 h2o 的 ipv4 发生变化

问题描述 投票:0回答:1

我是 docker 新手,我正在尝试在 docker 中运行 h2o,然后使用 python 连接到它。 我有文件夹: model-generator 文件夹,其中包含用于构建图像的 python 脚本和 Dockerfile h2o-start 文件夹,其中有 h2o.jar 文件和用于启动该 jar 的 Dockerfile docker-compose.yml 文件包含:

version: "3"
services:
   h2o-start:
      image: milanpanic2/h2o-start
      build: 
         context: ./h2o-start
      restart: always
   model-generator:
      image: milanpanic2/model-generator
      build:
         context: ./model-generator
      restart: always

我的Python脚本包含:

import h2o   

h2o.connect(ip='172.19.0.3', port='54321')

当我运行 docker-compose up 时,它给了我一个 python 无法连接的错误,因为 172.19.0.3 上没有任何内容

Python 的 Dockerfile

FROM python:2.7-slim
WORKDIR /app
ADD . /app
RUN pip install > --trusted-host pypi.python.org -r requirements.txt 
EXPOSE 80 
ENV NAME World 
CMD ["python", "passhash.py"]

h2o 的 Dockerfile

FROM openjdk:8
ADD h2o.jar h2o.jar
EXPOSE 54321 EXPOSE 54322
ENTRYPOINT ["java", "-jar", "h2o.jar"]
docker ip h2o
1个回答
2
投票

尝试启动暴露端口 54321 的容器:添加到 docker-compose 文件中的

h2o-start:

ports: 
  - "54321:54321"
  - "54322:54322"
© www.soinside.com 2019 - 2024. All rights reserved.