Ho clonato una configurazione finestra mobile che utilizza la finestra mobile-compose. Uno sviluppatore remoto conferma che funziona, quindi il mio problema sembra essere nella mia configurazione.docker-compose restituisce ERRORE: impossibile individuare il file Docker: Dockerfile
mi sono imbattuto docker-compose up
, ma che attualmente mi dà questo:
$ docker-compose up
Creating volume "mycompanydocker_mysql-data" with local driver
Creating volume "mycompanydocker_redis-data" with local driver
Creating volume "mycompanydocker_app-data" with local driver
Creating volume "mycompanydocker_mongo-data" with local driver
mycompanydocker_redis_1 is up-to-date
mycompanydocker_mongo_1 is up-to-date
mycompanydocker_mysql_1 is up-to-date
Building app
ERROR: Cannot locate specified Dockerfile: Dockerfile
mio docker-compose.yml
assomiglia a questo:
version: '2'
services:
mysql:
build: mysql/.
env_file: env
expose:
- 3306
ports:
- "3306:3306"
volumes:
- mysql-data:/var/lib/mysql
mongo:
build: mongo/.
env_file: env
expose:
- 27017
ports:
- "27017:27017"
volumes:
- mongo-data:/data/db
redis:
build: redis/.
env_file: env
expose:
- 6379
ports:
- "6379:6379"
volumes:
- redis-data:/data
app:
build: app/.
env_file: env
expose:
- 80
ports:
- "80:80"
volumes:
# To mount a local directory, change this
# To use a docker volume
- app-data:/app
# local app
# - ./mycompany:/app
depends_on:
- mysql
- mongo
- redis
volumes:
app-data:
driver: local
mysql-data:
driver: local
redis-data:
driver: local
mongo-data:
driver: local
e l'albero si presenta così:
$ tree
.
├── README.rst
├── app
│ ├── Dockerfile
│ ├── bin
│ │ ├── setup.sh
│ │ ├── start-nginx.sh
│ │ ├── start-rqworker.sh
│ │ ├── start.sh
│ │ └── update.sh
│ ├── etc
│ │ ├── nginx
│ │ │ └── sites-available
│ │ │ └── app
│ │ ├── supervisor
│ │ │ └── conf.d
│ │ │ └── supervisord.conf
│ │ └── supervisord.conf
│ └── ssh
│ └── id_rsa
├── docker-compose.yml
├── env
├── mongo
│ └── Dockerfile
├── mysql
│ └── Dockerfile
└── redis
└── Dockerfile
Il cosa che non capisco è che docker-compose
sembra trovare tutto Dockerfile
s, ad eccezione di quello nella cartella app
. Ho installato quanto segue su OSX 10.11.2:
Docker version 1.10.3, build 20f81dd
docker-compose version 1.6.2, build 4d72027
Sto solo agli inizi con Docker e Sono un po 'bloccato qui. Qualcuno sa cosa potrebbe essere sbagliato o come posso eseguire il debug di questo? Tutti i suggerimenti sono ben accetti!
[EDIT] ho dimenticato di dire che non c'è alcun file .dockerignore nascosto:
$ ls -la
total 56
[email protected] 11 kramer staff 374 25 mrt 14:13 .
drwx------+ 1134 kramer staff 38556 26 mrt 17:27 ..
[email protected] 1 kramer staff 8196 26 mrt 08:14 .DS_Store
[email protected] 1 kramer staff 23 24 mrt 15:29 .gitignore
[email protected] 1 kramer staff 3879 24 mrt 15:29 README.rst
[email protected] 7 kramer staff 238 25 mrt 14:26 app
[email protected] 1 kramer staff 868 25 mrt 17:50 docker-compose.yml
[email protected] 1 kramer staff 219 24 mrt 15:29 env
[email protected] 3 kramer staff 102 24 mrt 15:29 mongo
[email protected] 3 kramer staff 102 24 mrt 15:29 mysql
[email protected] 3 kramer staff 102 24 mrt 15:29 redis
e il file .gitignore non contiene nulla di speciale (non so se è importante):
$ cat .gitignore
.project
.pydevproject
Controlla se hai un '.docke nascosto file rignore' che potrebbe contenere 'Dockerfile' nel suo contenuto. Un altro motivo possibile è che si dispone di collegamenti simbolici nella struttura della cartella. –
@warmoverflow - Ho dimenticato di dire che non esiste '.dockerignore'. Ho cercato l'intero file system ('sudo find/-name .dockerignore') e ho trovato un file' .dockerignore', ma quello era in qualche repository totalmente non correlato. Inoltre, non ci sono collegamenti simbolici nel progetto. – kramer65
Puoi specificare esplicitamente il nome del Dockerfile per vedere se funziona. vedere https://docs.docker.com/compose/compose-file/#context.'build: contesto:. dockerfile: Dockerfile-alternate' –