Docker ENTRYPOINT bash脚本反复执行

时间:2018-12-18 14:33:31

标签: shell docker docker-compose composer-php dockerfile

除了我在Dockerfile末尾使用

运行ENTRYPOINT脚本时,Docker容器中的所有初始化工作都进行得很好
# ...
ENTRYPOINT ["bash", "./shell_scripts/init.sh"]

组成
#!/bin/bash
echo "Init app..."
composer update
composer dump-autoload
php artisan migrate

当我运行docker-compose up --build时,它会一遍又一遍地运行脚本。...

docker-compose.yml

version: '3.7'
services:

  mysql_db:
    image: mysql:8.0.13
    container_name: mysql_8.0.13
    command: --default-authentication-plugin=mysql_native_password
    restart: unless-stopped
    tty: true
    ports:
      - 3307:3306
    environment:
      SERVICE_TAGS: dev
      SERVICE_NAME: mysql
      MYSQL_ROOT_PASSWORD: mypass
    networks:
      - app-network


  app_n_php:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: app_php_7.3-rc-fpm
    volumes:
      - type: bind
        source: ./app
        target: /var/www/app
    restart: unless-stopped
    tty: true
    ports:
      - 8001:8000
    depends_on:
      - mysql_db
    environment:
      SERVICE_NAME: app_n_php
      SERVICE_TAGS: dev

networks:
  app-network:
    driver: bridge

知道发生了什么吗?

0 个答案:

没有答案