I've started to learn Docker. I have Laravel application and want to start it in docker containers. But I can't run it correctly.
I have this docker-compose.yml:
version: '2' services: # The Application app: build: context: ./ dockerfile: app.dockerfile working_dir: /var/www volumes: - ./:/var/www environment: - "DB_PORT=3306" - "DB_HOST=database" # The Web Server web: build: context: ./ dockerfile: web.dockerfile working_dir: /var/www volumes_from: - app ports: - 8080:80 # The Database database: image: mysql:5.6 volumes: - dbdata:/var/lib/mysql environment: - "MYSQL_DATABASE=homestead" - "MYSQL_USER=homestead" - "MYSQL_PASSWORD=secret" - "MYSQL_ROOT_PASSWORD=secret" ports: - "33061:3306" volumes: dbdata: And this vhost.conf:
server { listen 80; index index.php index.html; root /var/www/public; location / { try_files $uri /index.php?$args; } location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass app:9000; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; } } app.dockerfile:
FROM php:7.1.3-fpm RUN apt-get update && apt-get install -y \ libmagickwand-dev --no-install-recommends \ libmcrypt-dev \ cron \ mysql-client \ vim \ && docker-php-ext-install mcrypt pdo_mysql web.dockerfile:
FROM nginx:1.10 ADD vhost.conf /etc/nginx/conf.d/default.conf After run containers I have 502 Bad Gateway and in web container I have this: connect() failed (111: Connections refused) while connecting to upstream, client: 192.168.99.1, server: request "GET /HTTP/1.1", upstream: "fastcgi://172.19.0.3:9000", host: "192.168.99.101:8080".
I very bad at server settings and don't understand what happened. Will be very grateful for every help.
ping app. If the containers are not able to ping each other try to include a network that the containers share.webtoapp.