【问题标题】:How to add jupyter to rocker image?如何将 jupyter 添加到摇杆图像?
【发布时间】:2019-01-11 10:20:52
【问题描述】:

我是docker 的新手,我正在尝试将jupyterpython 添加到基于Rockerdocker 图像中(我想同时拥有pythonR) .我能够安装 python3jupyter 与依赖项。图像已成功创建。运行容器后,我可以访问端口7878 上的RStudio server,但不幸的是,端口8888 jupyter 无法正常工作。

我的Dockerfile 看起来像这样:

FROM rocker/rstudio:3.5.0

# Basic dependencies
RUN apt-get update && apt-get install -y \
      libcurl4-gnutls-dev \
      libssl-dev \
      libpng-dev \
      vim \
      nano \
      libxml2 \
      libxml2-dev \
      curl \
      gnupg2 \
      build-essential libssl-dev \
      libpq-dev \
      ssh
SHELL ["/bin/bash", "-c"]

# Install python3 and pip3
RUN apt-get update && apt-get install -y python3 \
    python3-pip \
    build-essential

# Install jupyter
RUN pip3 install jupyter

EXPOSE 8888
RUN mkdir /notebooks
CMD jupyter notebook --no-browser --ip 0.0.0.0 --allow-root --port 8888 /notebooks

CMD ["/init"]

构建并运行:

docker build -f Dockerfile -t user/my_docer:1.0 .
docker run -d --name my_docker -p 8787:8787 -p 8888:8888 -v `pwd`:/mnt user/my_docer:1.0

【问题讨论】:

    标签: docker jupyter-notebook jupyter


    【解决方案1】:

    您不能使用多个CMD 指令 - 第二个会覆盖第一个。如果您需要在容器中运行多个进程,这被视为不好的做法,最好使用supervisord 之类的软件。

    另一种选择是将所有内容放在单个 CMD 指令中,例如

    CMD ["/bin/bash", "-c", "'jupiter blahblah && /init'"]
    

    【讨论】:

      猜你喜欢
      • 2020-07-02
      • 1970-01-01
      • 2016-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-31
      • 2021-11-16
      • 2011-08-07
      相关资源
      最近更新 更多