Bonjour,

j'essaye de faire fonctionner 2 sites web (symfony) avec Docker

/site1
/site2
/php/vhosts/vhost.conf
/php/Dockerfile
docker-compose.yml

/php/vhosts/vhost.conf
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<VirtualHost *:80>
    ServerName domain.tld
    ServerAlias www.domain.tld

    DocumentRoot /var/www/site1/public
    DirectoryIndex /index.php

    <Directory /var/www/site1/public>
        AllowOverride None
        Order Allow,Deny
        Allow from All

        FallbackResource /index.php
    </Directory>

    <Directory /var/www/site1/public/bundles>
        DirectoryIndex disabled
        FallbackResource disabled
    </Directory>
    ErrorLog /var/log/apache2/site1.log
    CustomLog /var/log/apache2/site1.log combined
</VirtualHost>


<VirtualHost *:81>
    ServerName domain2.tld
    ServerAlias www.domain2.tld

    DocumentRoot /var/www/site2/public
    DirectoryIndex /index.php

    <Directory /var/www/site2/public>
        AllowOverride None
        Order Allow,Deny
        Allow from All

        FallbackResource /index.php
    </Directory>

    <Directory /var/www/site2/public/bundles>
        DirectoryIndex disabled
        FallbackResource disabled
    </Directory>
    ErrorLog /var/log/apache2/site2.log
    CustomLog /var/log/apache2/site2.log combined
</VirtualHost>

/php/Dockerfile
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
FROM 	php:7.4-apache

# NODE
RUN apt-get update -yq \
    && apt-get install curl gnupg -yq \
    && curl -sL https://deb.nodesource.com/setup_12.x | bash \
    && apt-get install nodejs -yq

# YARN
RUN npm install -g yarn

# PHP
RUN apt-get update && apt-get install -y \
        locales \
        apt-utils \
        git \
        libicu-dev \
        g++ \
        libpng-dev \
        libxml2-dev \
        libxslt-dev \
        libonig-dev \
        libfreetype6-dev \
        libjpeg62-turbo-dev \
        libmcrypt-dev \
        libpng-dev \
        zlib1g-dev \
        libxml2-dev \
        libzip-dev \
        graphviz \
    && docker-php-ext-configure gd \
    && docker-php-ext-install -j$(nproc) gd \
    && docker-php-source delete

# composer
RUN 	php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && php composer-setup.php && php -r "unlink('composer-setup.php');" && mv composer.phar /usr/local/bin/composer

# extension php

RUN     docker-php-ext-install zip pdo pdo_mysql opcache calendar dom intl mbstring xsl
RUN     pecl install apcu && docker-php-ext-enable apcu

#
WORKDIR /var/www
docker-compose.yml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
version: '3.9'

services:

  www:
    build: php
    container_name: www_docker_symfony
    restart: always
    ports:
      - 8001:80
      - 8002:81
    volumes:
      - ./php/vhosts:/etc/apache2/sites-enabled
      - ./site1:/var/www/site1
      - ./site2:/var/www/site2    
    networks:
      - dev
      
networks:
  dev:
j'accède bien au site1 :
http://localhost:8001

mais problème, je n'accède pas au site2:
http://localhost:8002

pour info:
- dans le docker desktop est affiché en vert : Running PORT:8001 (8002 n'apparait pas)
- en ligne de commande, j'accède dans le container, j'ai bien les dossiers : /site1 et /site2
- en ligne de commande, j'accède dans le container, j'ai bien à la config apache : /etc/apache2/sites-enabled/vhosts.conf