Tag: 文件系统

Docker卷是分区还是子目录?

我在docker run命令中用-v标志在docker run时声明了一个新卷。 什么是创build的音量? 分区还是只有一个子目录? 可能它可能格式化到另一个文件系统(如果Docker支持其他FS,比AUFS )?

什么是Docker容器的文件系统? 在此容器中运行的应用程序在哪个文件系统上运行?

基本上,我在我的Windows 10机器上运行Docker。 我已经在这个容器中挂载了一个windows目录来访问我的Windows机器上的文件,在这个文件上执行一些任务。 docker集装箱内运行哪个文件系统? 这个容器是基于什么样的OS? 例如,如果我运行一个具有ubuntu作为基本操作系统的容器,它会是当前版本的ubuntu(在这个容器内运行)? 或者是在Docker守护进程上运行的那个? 另外,我正在这个容器中运行一个应用程序,该应用程序访问我的Windows目录中的文件以及创build一对文件。 现在,这些文件正在写入Windows,因此遵循Windows(NTFS)的文件系统。 那么它是怎样工作的? (Docker容器和Windows文件系统内部的不同文件系统;两者合并?)

Docker在磁盘空间上的aufs虽然DF显示丰富

症状:无法启动任何容器 $ docker run continuumio/miniconda3 docker: Error response from daemon: mkdir /var/run/docker/libcontainerd/a40677f8a1bbaf43d0bd3c1935c4ee69330ac1b0c6bb577ebf66f78edaae2d48: no space left on device. $ sudo df -h /var/run/docker/libcontainerd Filesystem Size Used Avail Use% Mounted on tmpfs 201M 748K 200M 1% /run 我已经删除了退出的容器和悬挂或旧图像。 一些信息(我在AWS上运行2GB RAM的Ubuntu): $ docker info Containers: 9 Running: 7 Paused: 0 Stopped: 2 Images: 278 Server Version: 1.12.3 Storage […]

Docker:只读文件系统错误

我需要一个创build容器(docker运行),运行像gams的应用程序,然后销毁该容器。 对于负载testing,我重复这个1000次。 在这个testing结束之前,RHEL7抱怨ls上的“只读文件系统”或“分段错误”。 迄今唯一的解决scheme是磁盘重置。 试图增加限制。 尝试重置$ LD_LIBRARY_PATH.none工作。 什么可能是一个很好的诊断? 到目前为止的解决scheme:从docker 1.12.6升级到17.x,将间隔设置为5分钟 执行上述两种解决scheme之后至今没有经历过磁盘复位,等待下一次testing完成确认 更新 当通过Java代码将文件从主节点复制到计算节点时,再次裁剪问题:“bash:无法为此处创build临时文件 – 文档:只读文件系统”

sbt-native-packager是可以使用本地文件系统泊坞窗图像作为基础图像

目前使用的是sbt-native-packager v 1.2.1,默认情况下使用openjdk基本的docker镜像,如http://www.scala-sbt.org/sbt-native-packager/formats/docker.html 环境设置 “dockerBaseImage用作运行应用程序的基础的映像,它应该在chown,mkdir的path中包含二进制文件,有一个可发现的java二进制文件,并包含由daemonUser(默认情况下,守护进程)configuration的用户。 我想知道是否有可能从文件系统使用本地映像而不是简单地指向“./my-Dockerfile”之类的东西?

从主机挂载/卸载可移动驱动器后,容器绑定安装目录中的内容保持不变

我想根据已安装的可移动USB磁盘dynamic更改容器目录中的内容。 要做到这一点,我做了以下步骤。 使用-v选项运行容器,该选项将主机目录( /mnt )装载到容器( /share )中。 假设新容器的名称是testing 。 该命令应该像docker run –name test -d -v /mnt:/share ubuntu:latest 。 通过docker exec -it test /usr/bin/bash检查内容。 目前, /share是空的。 将USB磁盘挂载到主机上。 执行mount /dev/sdxY /mnt命令。 主机上的/mnt目录现在包含存储在可移动USB磁盘上的文件和目录。 再次检查容器中的内容。 容器中的/share目录仍然是空的。 一切都没有改变。 如果我这样做的话:1)首先将U盘安装到主机上,2)运行容器,3)卸下U盘。 容器中的内容保持不变,但主机上的/mnt目录被扫描。 在装载/卸载磁盘之后,docker是否有一些机制来保持容器和主机之间的内容同步。 docker信息: Containers: 2 Running: 2 Paused: 0 Stopped: 0 Images: 1 Server Version: 17.03.1-ce Storage Driver: aufs Root Dir: […]

如何在Docker主机中存储PostgreSQL状态

PostgreSQL对数据文件夹的处理与Docker的主机挂载文件夹不兼容。 它可能在安装了ext4文件系统的Linux下运行,但在OS X或Windows上运行 docker run -it –rm -v `pwd`/test:/var/lib/postgresql/data postgres initdb终止于随机磁盘写入错误,如: creating template1 database in /var/lib/postgresql/data/base/1 … FATAL: could not write to file "pg_xlog/xlogtemp.25": Input/output error 要么 FATAL: could not close file "base/1/1249": Input/output error FATAL: could not close file "base/1/2603": Input/output error CONTEXT: writing block 0 of relation base/1/1247 当使用命名卷时,一切正常,但是命名卷并不是保存数据的一种安全方式。 例如,在Docker for Mac中,它们都隐藏在一个巨大的qcow2虚拟磁盘映像中。 你build议在非Linux主机上保持PostgreSQL状态的策略是什么? […]

AWS上的Docker在以某种方式运行时填充其精简池?

我在AWS上有一个ElasticBeanstalk服务器。 即使没有图像被拖动,精简池仍会持续填充一天,直到文件系统以只读方式重新挂载并且应用程序死亡。 Docker 1.12.6在最新的Amazon AMI上发生这种情况。 我真的无法做出正面或反面的。 当一个EC2实例(托pipeBeanstalk)启动时,它在精简池中大约有1.3GB。 当我的1.2GB图像运行时,它有大约3.6GB(这是记住的信息,这是非常接近)。 好没关系。 切到5小时后… (从托pipe它的EC2实例) docker info返回: Storage Driver: devicemapper Pool Name: docker-docker–pool Pool Blocksize: 524.3 kB Base Device Size: 107.4 GB Backing Filesystem: ext4 Data file: Metadata file: Data Space Used: 8.489 GB Data Space Total: 12.73 GB Data Space Available: 4.245 GB lvs同意。 在另外几个小时内,将会变成12.73GB使用和0B免费。 dmesg将会报告: [2077620.433382] Buffer […]

如何获取由本地文件系统上的Docker容器生成的内容(最小失败示例)

这个问题是另一个最小的失败版本: 如何获取由本地文件系统上的Docker容器生成的内容 我有以下文件: ./test -rw-r–r– 1 miqueladell staff 114 Jan 21 15:24 Dockerfile -rw-r–r– 1 miqueladell staff 90 Jan 21 15:23 docker-compose.yml drwxr-xr-x 3 miqueladell staff 102 Jan 21 15:25 html ./test/html: -rw-r–r– 1 miqueladell staff 0 Jan 21 15:22 file_from_local_filesystem DockerFile FROM php:7.0.2-apache RUN touch /var/www/html/file_generated_inside_the_container VOLUME /var/www/html/ 泊坞窗,compose.yml test: image: test volumes: – […]

主机上应该在哪里存活docker卷?

在主机端,所有的挂载点应该位于相同的位置吗? 还是应该反映集装箱内的位置? 例如,为了与Unix文件系统保持一致,在主机端挂载/var/jenkins_home的最佳位置是什么? /var/jenkins_home /srv/jenkins_home /opt/docker-volumes/jenkins/var/jenkins_home 其他地方 ?