首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >改变容器分区的磁盘空间

改变容器分区的磁盘空间
EN

Stack Overflow用户
提问于 2017-04-16 09:52:11
回答 2查看 581关注 0票数 1

我使用了正式停靠页面中提到的命令。

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

官方指挥:

代码语言:javascript
复制
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磁盘。

代码语言:javascript
复制
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"

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

更新:

我正在使用Dockerfile,这是由世智建议的。但这是正确的命令,如果我需要的话:

代码语言:javascript
复制
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"
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-16 11:46:12

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

代码语言:javascript
复制
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"]

然后建立你自己的形象:

代码语言:javascript
复制
docker build -t jupyter .

之后,您可以轻松地启动您的服务如下:

代码语言:javascript
复制
docker run -d -v `pwd`/notebooks:/opt/notebooks -p 8888:8888 jupyter

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

票数 1
EN

Stack Overflow用户

发布于 2017-04-16 11:26:26

默认情况下,Docker将分配10G的数据,而不考虑主机的大小。

在这方面有一些最近的发展,码头3.18.0有最好的处理方法。同样的详细信息可以在码头文件中获得。

根据文档,您必须使用以下命令序列来增加容器/图像的基本大小。

  • 请注意,上面的命令是不可挽回的操作。一旦你把尺寸设定为50克,你就永远无法把它缩小。
  • 此外,该分区目前只能在ext4分区上使用。因此,您的主机应该有运行docker的ext4分区,并从其中创建容器/图像。$ sudo dockerd --storage-opt dm.basesize=50G
  • 要让更改生效,您必须运行以下命令:$ sudo service docker stop $ sudo rm -rf /var/lib/docker $ sudo service docker start

此外,请注意,这将影响所有未来的图像,您拉/构建和未来容器您创建。现有容器不受此命令的影响。因此,您可能必须重新创建您的图像和重新创建您的容器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43435936

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档