Tag: 文件

如何通过terminal或DockerFile来设置Docker容器的RAM内存

我需要一个具有6GB内存的Docker容器。 我试过这个命令: docker run -p 5311:5311 –memory=6g my-linux 但是它不起作用,因为我login到Docker容器,并检查了可用的内存量。 这是显示只有2GB可用的输出: >> cat /proc/meminfo MemTotal: 2046768 kB MemFree: 1747120 kB MemAvailable: 1694424 kB 我尝试设置首选项 – >在Docker应用程序中前进。 如果我设置6GB的,它的工作原理…我的意思是,我有一个6GB的MemTotal容器。 这样我所有的容器将有6GB … 我想知道如何使用一些命令或者在Docker文件中设置一些东西来为一个容器分配6GB的内存。 任何帮助?

Docker复制并更改所有者

给定以下的Dockerfile FROM ubuntu RUN groupadd mygroup RUN useradd -ms /bin/bash -G mygroup john MKDIR /data COPY test/ /data/test data RUN chown -R john:mygroup /data CMD /bin/bash 在我的testing目录,这是复制我已经设置文件权限为770。 如果我在我的容器中执行su john ,我无法访问我的testing目录中的任何文件或子目录。 看起来这个问题与aufs文件系统中的所有权有关,在这里复制的目录仍然由root拥有,权限被设置为770。 有没有解决这个问题正确设置权限? 可以在复制之前将原始目录的权限设置为容器用户的uid。 但是这看起来更像是一个黑客。

如何使用基于高山的docker图像bash?

我从openjdk创build了一个docker镜像:8-jdk-alpine,但是当我尝试执行简单的命令时,出现以下错误: RUN bash /bin/sh: bash: not found RUN ./gradlew build env: can't execute 'bash': No such file or directory

如何将文件夹从Dockerfile复制到Docker镜像?

我在我的Dockerfile中尝试了下面的命令: COPY * /并且对结果感到惊讶。 看起来天真的docker代码遍历glob中的目录,然后转储目标目录中的每个文件,同时恭敬地忽略我的目录结构。 至less我是这样理解这张票的 ,这当然对应于我得到的结果。 我猜这个行为仍然存在的唯一原因必须是有一些其他的方式应该这样做。 但是,要知道一个小脑袋怎么知道,怎么知道呢?

docker如何添加一个文件,而不是提交到一个图像?

我有一个〜300Mb的压缩本地文件,我添加到docker的图像。 下一个状态然后提取图像。 问题是ADD语句导致提交导致新的文件系统层使图像大于它所需要的300Mb。 ADD /files/apache-stratos.zip /opt/apache-stratos.zip RUN unzip -q apache-stratos.zip && \ rm apache-stratos.zip && \ mv apache-stratos-* apache-stratos 问题 :是否有解决方法来添加本地文件而不会导致提交? 一个select是在启动Docker构build之前运行一个简单的Web服务器(例如python -m SimpleHTTPServer ),然后使用wget来检索文件,但是这看起来有点麻烦: RUN wget http://localhost:8000/apache-stratos.zip && \ unzip -q apache-stratos.zip && \ rm apache-stratos.zip && \ mv apache-stratos-* apache-stratos 另一个select是在容器启动时提取压缩文件,而不是build立时间,但我宁愿保持尽可能快的启动。

Docker – 在源文件中生成Arg

我正在尝试构build一个Docker容器,其源代码标记我想作为parameter passing。 构build脚本: docker build \ –pull=true \ … –build-arg version=${version} Dockerfile: ARG version FROM registry/repo:${version} 运行这个给我的错误Please provide a source image with prior to commit Please provide a source image with 。 有什么办法,我可以通过版本拉作为构build参数,并使用它? 我在docker版本1.12

Dockerfile if else条件与外部参数

我有dockerfile FROM centos:7 ENV foo=42 然后我build立它 docker build -t my_docker . 并运行它。 docker run -it -d my_docker 是否有可能从命令行传递参数,并在Dockerfile中使用它? 我的意思是这样的 FROM centos:7 if (my_arg==42) {ENV=TRUE} else: {ENV=FALSE} 并build立这个论点。 docker build -t my_docker . –my_arg=42

自行托pipe的替代hub.docker.com?

我想build立一个私人版本的hub.docker.com,让我创build一个由我的私人gitlab实例推送的webhook。 换句话说 – 当我推送到Gitlab时,这个Dockerregistry会检出这个存储库并构build它。 我需要这个来抵御恶意的Docker文件,这样服务器就不会轻易被泄露,从而泄露所有托pipe容器的内容。 有没有一种方法可以轻松实现?

Heroku运行端口参数的Docker镜像

当我将现有的Docker镜像推送到Heroku时,Heroku提供了一个$ PORT示例。 我怎样才能将这个属性传递给Heroku运行实例? 本地主机,这将工作: docker pull swaggerapi/swagger-ui docker run -p 80:8080 swaggerapi/swagger-ui 在Heroku我应该这样做: docker run -p $PORT:8080 swaggerapi/swagger-ui 是这样的可能吗?

如何向Dockerfile中的Jenkins for LDAPS添加SSL自签名证书?

我想在Jenkins的安全性下启用LDAPS,但是我的LDAP服务器有一个自签名的CERT。 有没有人做过这个或有一些指针呢? 我必须使用keytool吗? 在我的Dockerfile中,我正在尝试以下,但是这不起作用: FROM jenkins USER root # Install CA certs COPY ca-certificates.crt /etc/ssl/certs/ca-certificates.crt RUN chmod +r /etc/ssl/certs/ca-certificates.crt # Install the Jenkins plugin COPY plugins.txt /usr/share/jenkins/plugins.txt RUN /usr/local/bin/plugins.sh /usr/share/jenkins/plugins.txt # Expose container port 33838 for Jenkins UDP-based auto-discovery EXPOSE 33848/udp ENV JAVA_OPTS -Xmx2048m