2017-12-26 8 views
1

ich habe folgende Dockerfile_dev Docker-Datei:Docker Knoten: Entry kann nicht gefunden werden

FROM node:alpine 
MAINTAINER "Desyllas Dimitrios" 

ENV NEO4J_HOST="" 
ENV NEO4J_USER="" 
ENV NEO4J_PASSWORD="" 
ENV MONGO_CONNECTION_STRING="" 
ENV LOGS_DIR="/var/log/data_map" 

COPY ./docker_scripts/entrypoint_dev.sh /usr/local/bin/entrypoint.sh 

RUN chmod +x /usr/local/bin/entrypoint.sh &&\ 
    chown root:root /usr/local/bin/entrypoint.sh &&\ 
    mkdir -p /opt/map &&\ 
    mkdir -p /var/log/data_map &&\ 
    chmod 0666 /var/log/data_map 

EXPOSE 7474 
VOLUME /var/log/data_map 
VOLUME /opt/map 

WORKDIR /opt/map 

ENTRYPOINT ['/usr/local/bin/entrypoint.sh'] 

Und ich habe folgenden Einstiegspunkt:

#!/bin/sh 

cd /opt/map 

npm install 
npm start 

Und das Build-Bild wird über folgende gestartet docker-komponieren

version: '2' 
services: 

    data_map_dev: 
    build: 
     context: . 
     dockerfile: Dockerfile_dev 
    image: 'pcmagas/data-map:dev' 
    links: 
     - 'neo4j_dev' 
     - 'mongodb' 
    volumes: 
     - './src:/opt/map/src' 
     - './www:/opt/map/www' 
     - './package.json:/opt/map/package.json' 
     - './docker-volumes/app_dev:/var/log/datamap' 
    ports: 
     - "9781:9780" 
    environment: 
     NEO4J_HOST: 'neo4j_dev' 
     NEO4J_USER: 'neo4j' 
     NEO4J_PASSWORD: 'neo4j' 
     MONGO_CONNECTION_STRING: 'mongodb://mongodb:map_dev' 

    neo4j_dev: 
    image: 'neo4j' 
    ports: 
     - '7474:7474' 
    volumes: 
     - './docker-volumes/neo4j_dev/data:/data' 
    environment: 
     NEO4J_AUTH: 'neo4j/neo45j' 

    mongodb: 
    image: 'mongo' 
    ports: 
     - '27017:27017' 
    volumes: 
     - './docker-volumes/mongodb/:/data/db' 

ich baue es mit docker-compose build --no-cache --force-rm und wenn ich i starten t über docker-compose up kann es das Einstiegsskript nicht finden, wie Sie in der Nachricht sehen:

data_map_dev_1 |/bin/sh: [/usr/local/bin/entrypoint.sh]: nicht gefunden

Haben Sie eine Idee warum? Ich habe ein ähnliches Problem auf my project auch.

+0

@ KARTHIKEYAN.A Sie haben in letzter Zeit viele minderwertige Tags erstellt, die ich zurückkommen haben musste. Zum Beispiel ist [json-syntax] kein gutes Tag. Bitte erstellen Sie keine neuen Tags, außer Sie sind sicher, dass Sie wissen, was Sie tun. – JJJ

+0

Sicher verstehe ich. Vielen Dank. –

Antwort

1

Ihre JSON-Syntax ist falsch.

Hinweis: Das exec-Formular wird als JSON-Array analysiert, was bedeutet, dass Sie doppelte Anführungszeichen (") um Wörter, nicht einfache Anführungszeichen (') verwenden müssen.

https://docs.docker.com/engine/reference/builder/

Umschalten auf doppelte Anführungszeichen wie folgt aus:

ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]