Sto provando a configurare un sistema di docker-compose
cui vorrei copiare gli strumenti di dev su /usr/local/bin/
all'avvio.
Quello è il mio docker-compose.yml
:
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:
se lascio - ./docker/data/bin/:/usr/local/bin/
in esso, ottengo un errore:
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"
Se non lo commenterò, tutti funzionano bene.
Che cosa faccio qui?
Se lo capisco correttamente e la mapping del volume ./docker/data/bin/:/usr/local/bin/
sta causando un'exception, probabilmente questo è dovuto al punto di accesso definito nell'image mariadb.
A questo punto, sovrascrivi la cartella contenitore /usr/local/bin
, che probabilmente contiene un file eseguibile utilizzato nel punto di ingresso. Quando ciò scompare, si ottiene un errore.