У меня есть два докер-контейнера: nginx и php-fpm.
Я хочу сделать их автономными (контейнеры будут клонировать репозиторий из git при сборке) для производства. Но после клонирования репо мне нужно сделать некоторые начальные вещи, например composer install
в папке проекта. Я могу сделать это внутри контейнера php-fpm, потому что у меня там есть php. Но как подготовить код в контейнере nginx? У меня нет php для композитора.
Все в порядке, когда я монтирую одну и ту же инициализированную папку в оба контейнера.
Может я что-то не так делаю, как лучше сделать автономный контейнер для nginx+php-fpm?
На данный момент у меня есть этот nginx-config:
server {
listen 80;
server_name localhost;
index index.php index.html;
# I need only /api/ path
location /api/ {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
root /var/www/public;
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass api:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}