在docker中使用相同代码库的不同服务器

I have a project and I want to up multiple server with different environment locally to have it communicate with each other.

To achieve this, I have tried to up two containers named php-fpm and php-fpm-web. They both share a same codebase. Besides that, I have an Apache2 with the following settings.

<VirtualHost *:80>
  ServerName laravel.local
  DocumentRoot /var/www/laravel/public

  <Directory "/var/www/laravel/public">
   ...
  </Directory>

</VirtualHost>

<VirtualHost *:80>
  ServerName another.laravel.local
  DocumentRoot /var/www/laravel/public

  <Directory "/var/www/laravel/public">
   ...
  </Directory>

  <FilesMatch \.php$>
      # Apache 2.4.10+ can proxy to unix socket
      SetHandler "proxy:php-fpm-web:9000|fcgi://localhost/"
  </FilesMatch>

</VirtualHost>

But I receive a 500 Internal Error from Apache2 in the "another.laravel.local".

To achieve same codebase with different environment, I use

    <VirtualHost *:80>
        ServerName another.laravel.local
        DocumentRoot /var/www/laravel/public

        <Directory "/var/www/laravel/public">
        ...
        </Directory>

        <FilesMatch \.php$>
           SetEnv DB_DATABASE "db_name"
           SetEnv DB_USERNAME "user"
        </FilesMatch>

    </VirtualHost>

So that when the another.laravel.local is loaded, the environment variable would be injected to the php in runtime.