在我,Dockerfile我有:
ADD ../../myapp.war /opt/tomcat7/webapps/
Run Code Online (Sandbox Code Playgroud)
该文件存在,因为ls ../../myapp.war返回正确的文件,但当我执行时,sudo docker build -t myapp .我有:
Step 1 : ADD ../../myapp.war /opt/tomcat7/webapps/
2014/07/02 19:18:09 ../../myapp.war: no such file or directory
Run Code Online (Sandbox Code Playgroud)
有人知道为什么以及如何正确地做到这一点?
我不确定如何命名Dockerfiles.很多GitHub在Dockerfile没有文件扩展名的情况下使用.我给他们一个名字和名字吗?如果是这样的话?或者我只是打电话给他们Dockerfile?
我正在尝试建立一个docker/fig Mesos集群.我是无花果和Docker的新手.Docker有很多文档,但我发现自己很难理解如何使用fig.
这是我的fig.yaml:
zookeeper:
image: jplock/zookeeper
ports:
- "49181:2181"
mesosMaster:
image: mesosphere/mesos:0.19.1
ports:
- "15050:5050"
links:
- zookeeper:zk
command: mesos-master --zk=zk --work_dir=/var/log --quorum=1
mesosSlave:
image: mesosphere/mesos:0.19.1
links:
- zookeeper:zk
command: mesos-slave --master=zk
Run Code Online (Sandbox Code Playgroud)
谢谢 !
编辑:
感谢Mark O`Connor的帮助,我创建了一个基于docker的工作台设置(+风暴,chronos等等).
享受,如果您觉得这很有用 - 请提供:https: //github.com/yaronr/docker-mesos
PS.请+1马克的答案:)
我正在使用多个dockerfiles构建一个应用程序(每个服务一个).我的应用程序的目录结构如下:
app
??? dockerfiles
? ??? webserver
? ? ??? Dockerfile
? ??? database
? ??? Dockerfile
??? public
??? <frontend>
??? db
??? <data>
[...]
??? LICENSE
??? README.md
??? docker-compose.yml
Run Code Online (Sandbox Code Playgroud)
在我的网络服务器中Dockerfile,我想使用以下COPY命令复制现有代码:
# Dockerfile
COPY ./public /var/www/html
Run Code Online (Sandbox Code Playgroud)
我想使用我的docker-compose.yml文件部署应用程序:
# docker-compose.yml
version: "3"
services:
webserver:
build: ./dockerfiles/webserver
image: webserver:php-apache
Run Code Online (Sandbox Code Playgroud)
但是,当我docker-compose从工作目录(app)运行时,我收到以下错误:
Building webserver
Step 1/2 : FROM php:7.1.11-apache-jessie
---> cb6a5015ad72
Step 2/2 : COPY ./public /var/www/html
Service 'webserver' failed …Run Code Online (Sandbox Code Playgroud)