Tag: 文件

将一个自定义的yum回购添加到Docker图像

我有一个docker图像,我试图创build,我安装yum的软件包依赖于第三方回购,我有一个rpm来安装回购和回购文件本身。 我试过了: RUN rpm -Uvh REPO.rpm ADD REPO.repo /etc/yum.repos.d/ RUN yum-config-manager –enable REPO.repo 甚至一个shell脚本来安装回购。 它似乎成功地采取了所有这些,但当它试图百胜安装包说明他们没有find,并没有search我已经安装到图像回购。 经过大量的谷歌search,我似乎无法find一个解决scheme,我错过了一个令人难以置信的明显的东西?

如何在DockerFile中运行Powershell脚本?

我在docker文件中尝试下面的这些命令,但它没有运行脚本。是否有任何其他命令在dockerfile中运行PS脚本? 添加Windowss.ps1。 CMD powershell。\ Windowss.ps1;

dockerfile CMD – 在不同端口上启动服务器

我在docker中有两个rails应用程序,我想在同一时间使用docker-compose up ,但是我想在不同的端口上启动每个应用程序。 我有一个不同的dockerfile为每个应用程序,与一个共享的docker-compose.yml。 docker-compose为每个应用程序有2个条目。 这里是一个Dockerfile的例子,但由于某种原因,它不可访问或不在指定的端口上启动: Expose port to the Docker host, so we can access it # from the outside. EXPOSE 5000 # Configure an entry point, so we don't need to specify # "bundle exec" for each of our commands. ENTRYPOINT ["bundle", "exec"] # The main command to run when the container starts. […]

docker集装箱nginx和npm http-server

nginx运行在容器中,如何运行npm http-server并在浏览器上访问它? Dockerfile非常简单,只需要安装nginx,nodejs和npm, EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]根文件夹是/var/www/ 现在我可以创build一个容器docker run -d -p 8080:80 –name dotker dotker 然后我进入docker集装箱, docker exec -it dotker bash 我能够浏览/www/helloWorld并运行http-server -p 8081是否可以在浏览器上查看/helloWorld网页,因为端口正在被nginx占用?

Dockerfile:检查生成机器是否为Windows

我们有一个Docker项目,由使用Windows,Mac或Linux的开发人员共享。 不幸的是,我们无法控制项目被克隆的方式 ,因此Windows开发人员在构buildDocker镜像时可能会遇到不好的结局,因此构build可能会失败。 为了解决这个问题,我们在Dockerfile中添加了一行代码,以便在生成过程开始之前用Unix行结束符replace所有的Windows行结束符: ADD . /app RUN find . -type f -exec sed -i 's/\x0d//g' {} \+ 但问题是,即使在Linux和Mac机器上,构build速度现在也要慢得多。 我只想在Windows机器上RUN这个命令的时候RUN这个命令。 但是有Dockerfile检测的方法吗?

将Docker导向本地NPM软件包时无法完成npm安装

我无法在任何地方find这个问题的答案,所以我希望这里有人可能遇到类似的问题。 我正试着装一个NodeJS应用程序,但在RUN npm install期间遇到这个错误: npm ERR! 无法从“packages / example-package”进行安装,因为它不包含package.json文件 有问题的软件包在本应用程序的package.json中被列为本地依赖项: "dependencies": { "@example-name/example-package": "file:../example-package" }, 使用这些本地文件path,在npm install之外运行npm install是没有问题的。 我已经尝试通过Dockerfile将包package.json文件复制到容器中,如下所示: COPY ./packages/example-package/package.json ./packages/example-package 由此产生的错误是: npm ERR! 无法安装“packages / example-packages”,因为它不是一个目录,也不是以.tgz,.tar.gz或.tar结尾的文件 我不知道该从哪里出发! 有什么build议么?

Invoke-Webrequest在Dockerfile中导致问题

我有一个像下面这样的Dockerfile: FROM microsoft/dotnet-framework:4.7 ARG source WORKDIR /app COPY ${source:-obj/Docker/publish} . RUN powershell.exe -Command \ $ErrorActionPreference = 'Stop'; \ $ProgressPreference = 'SilentlyContinue'; \ Invoke-WebRequest -Uri 'http://someexehost.com/some.exe' -OutFile some.exe; \ Write-Host "Done!"; ENTRYPOINT ["C:\app\myapp.exe"] 我为Docker使用了Visual Studio工具,出于某种原因,webrequest导致我的容器不能以以下方式启动: 1>Step 5/6 : RUN powershell.exe -Command $ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri 'http://someexehost.com/some.exe' -OutFile some.exe; Write-Host "Done!"; 1> —> […]

未findDocker滑行

Docker无法find在步骤3和4(如下)中成功安装的滑行。 我跑了 docker build . 这是Dockerfile的第一部分: FROM golang:latest as builder # Set up workdir WORKDIR /go/src/github.com/cayleygraph/cayley # Restore vendored dependencies RUN sh -c "curl https://glide.sh/get | sh" COPY glide.* ./ RUN glide install 但是这个错误在步骤5中失败了: docker build . Sending build context to Docker daemon 65.18MB Step 1/29 : FROM golang:latest as builder —> 1a34fad76b34 Step 2/29 […]

如何将挂载静态html绑定到nginx

我想通过HTML目录绑定到nginx,但每当我访问nginx目录,看它是否正确安装,我看到它是空的。 我正在使用以下命令: docker container run –network nginx -d -p 80:80 –name server -v /html2:/usr/share/nginx/html:ro nginx 我使用正确的命令? 如果是的话,那可能是什么问题?

Docker / NodeJS:“exec:\” – d \“:在$ PATH中找不到可执行文件”

从NodeJS 8.2升级到9.1后,运行Docker容器时出现问题。 这是我得到的消息。 我使用了在Docker Hub中find的Dockerfile,但遇到了无法findpackage.json的错误。 所以我评论说,并使用我在NodeJS网站上find的那个。 以下是Docker文件: Dockerfile FROM node:9.1.0 RUN mkdir -p /usr/src/app WORKDIR /usr/src/app ONBUILD ARG NODE_ENV ONBUILD ENV NODE_ENV $NODE_ENV ONBUILD COPY package*.json ./ ONBUILD RUN npm install && npm cache clean –force ONBUILD COPY . /usr/src/app CMD [ "npm", "start" ] 我会感谢更有经验的用户的帮助。