2017-08-18 23 views
1

起動時にdevツールを/usr/local/bin/にコピーしたいシステムをdocker-composeに設定しようとしています。私docker-compose.ymlザッツbinファイルをdockerコンテナにコピーするとエラーが発生する

version: '3' 

services: 
    web: 
    build: docker/container/nginx 
    ports: 
     - 4000:80 
    volumes: &m2volume 
     - ./src:/var/www/html/ 
     - ./docker/data/bin/:/usr/local/bin/ 
     - ~/.composer:/var/www/.composer 
    networks: &m2network 
     - www 
    links: 
     - "php" 
     - "mariadb:mysql" 
    mariadb: 
    image: mariadb 
    ports: 
     - 8001:3306 
    networks: *m2network 
    ports: 
     - "3307:3306" 
    environment: 
     MYSQL_ROOT_PASSWORD: magento2 
     MYSQL_DATABASE: db 
     MYSQL_USER: magento2 
     MYSQL_PASSWORD: magento2 
    volumes: 
     - ./docker/container/db/docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d/ 
     - ./docker/container/db/conf.d:/etc/mysql/conf.d 
     - ./docker/data/mariadb:/var/lib/mysql 

    php: 
    build: docker/container/fpm 
    volumes: *m2volume 
    networks: *m2network 

networks: 
    www: 

私はそれで- ./docker/data/bin/:/usr/local/bin/を残せば、私はエラーを取得:

ERROR: for m2_php_1 Cannot start service php: oci runtime error: container_linux.go:262: starting container process caused "exec: \"docker-php-entrypoint\": executable file not found in $PATH" 
Starting m2_mariadb_1 ... done 

ERROR: for php Cannot start service php: oci runtime error: container_linux.go:262: starting container process caused "exec: \"docker-php-entrypoint\": executable file not found in $PATH" 

私はそれのコメントを外した場合は、すべてが正常に動作します。

私はここで間違っていますか?

+0

コメントを外すと、コメントを残した場合と同じになります。言い換えれば、仕事でそれをコメントしているかどうか? –

+0

'#'エラーなし@omu_negru –

答えて

0

これを正しく理解してボリュームをマッピングすると、./docker/data/bin/:/usr/local/bin/が例外を引き起こしています。それはおそらく、entrypointがmariadbイメージで定義されているためです。

これまでのところ、/usr/local/binコンテナフォルダを上書きしています。これには、おそらくエントリポイントで使用される実行可能ファイルが含まれています。それが消えると、エラーが発生します。

+0

この回答に追加するには、フォルダ内のデフォルトの内容を置き換えることを避けるため、OPは個々のファイルをそのフォルダにマウントすることがあります。 – Ayushya

関連する問題