docker - 更改容器分区的磁盘空间

标签 docker

我使用了官方docker页面上提到的命令。

https://hub.docker.com/r/continuumio/miniconda3/

官方命令:

docker run -i -t -p 8888:8888 continuumio/miniconda3 /bin/bash -c "/opt/conda/bin/conda install jupyter -y --quiet && mkdir /opt/notebooks && /opt/conda/bin/jupyter notebook --notebook-dir=/opt/notebooks --ip='*' --port=8888 --no-browser"

我将tmp文件夹安装在容器中,并将其用作主目录,因为由于某些原因,根分区仅分配了10 GB磁盘。
docker run -i -t -p 8888:8888 -v /tmp/:/tmp/ continuumio/miniconda3 /bin/bash -c "/opt/conda/bin/conda install jupyter -y --quiet && cd /tmp/ && /opt/conda/bin/jupyter notebook --ip='*' --port=8888 --no-browser --allow-root"

我想知道是否有更好的方法可以做到这一点。根分区的大小应与主机硬盘容量相同。

更新:

我正在按照shizhz的建议使用Dockerfile。但是,如果需要的话,这是正确的命令:
docker run -i -t -p 8888:8888 -v /tmp:/tmp continuumio/miniconda3 /bin/bash -c "/opt/conda/bin/conda install jupyter -y --quiet && cd /tmp/ && /opt/conda/bin/jupyter notebook --notebook-dir=/tmp --ip='*' --port=8888 --no-browser --allow-root"

最佳答案

这与您的磁盘分区无关,但是我认为您在启动Shell中做的事情太多了,我建议您定义自己的Dockerfile并构建自己的镜像。我用以下Dockerfile测试:

FROM continuumio/miniconda3

RUN /opt/conda/bin/conda install jupyter -y --quiet && mkdir /opt/notebooks

VOLUME /opt/notebooks
EXPOSE 8888
WORKDIR /opt/notebooks

CMD ["/opt/conda/bin/jupyter", "notebook", "--notebook-dir=/opt/notebooks", "--ip='*'", "--port=8888", "--no-browser", "--allow-root"]

然后建立自己的形象:
docker build -t jupyter .

之后,您可以轻松启动服务,例如:
docker run -d -v `pwd`/notebooks:/opt/notebooks -p 8888:8888 jupyter

当然,您可以将主机上的任何目录挂载到容器内的VOLUME /opt/notebooks中。

关于docker - 更改容器分区的磁盘空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43435936/

相关文章:

docker - 在 Docker 中运行简单的 Java Gradle 应用程序

oracle - 带有 oracle 12c 的 Windows 的 Docker 镜像

docker - nvidia-docker run 与 docker run --runtime=nvidia

Python docker sdk如何在container.run中设置cpu计数

node.js - npm 命令在 Docker 容器中不可用

docker - 如何单独获取Docker容器ID

linux - 如何在共享的 Linux 内核上运行 Docker 守护进程?

docker - 我应该如何使用主机而不是服务名称连接到容器?

docker - 将docker run命令转换为docker-compose

docker - 无法使用 spotify 插件构建 Docker 镜像