Docker for PHP Devs
https://github.com/DevinNorgarb/docker
Docker guideline for PHP Developer
Images
Nginx:
nginx:1.17.2
PHP-FPM:
php:5.6-fpm-stretch
php:7.3-fpm-stretch
php:8.0-fpm-buster
Composer 2
"PHP Fatal error: Class UpdateHelper\ComposerPlugin contains 2 abstract methods and must therefore be declared abstract or implement the remaining methods (Composer\Plugin\PluginInterface::deactivate, Composer\Plugin\PluginInterface::uninstall) "
Redis:
redis:5.0
SSDB:
https://github.com/ideawu/ssdb/archive/master.zip
MySQL:
mysql:5.7.28
PostgrelSQL:
postgres:11.2
Prometheus:
prometheus:v2.30.3
Grafana:
grafana:7.5.11
Zookeeper:
wurstmeister/zookeeper
Kafka:
wurstmeister/kafka:2.11-1.1.1
Kafdrop:
obsidiandynamics/kafdrop
Kafka Manager:
hlebalbau/kafka-manager:stable
Steps
1.Install Docker
2.Modify the directory in file docker-compose.yml
, default mount ~/Documents/docker/www
~/Documents/docker/log
3.Build images, create containners, and start them:
4.Maybe you need to do something:
Modify Nginx configuration in
./nginx/conf.d
, the default configuration for Laravel and LaravelS already existsBind domain into your host machine. Linux/Mac:
/etc/hosts
, Windows:C:\Windows\System32\drivers\etc\hosts
Run
docker-compose restart
5.I WANT TO CONNECT FROM A CONTAINER TO A SERVICE ON THE HOST The host has a changing IP address (or none if you have no network access). From 18.03 onwards our recommendation is to connect to the special DNS name host.docker.internal
, which resolves to the internal IP address used by the host. This is for development purpose and will not work in a production environment outside of Docker Desktop for Mac.
Last updated