Поиск…


замечания

По умолчанию Compose устанавливает единую сеть для вашего приложения. Каждый контейнер для службы присоединяется к сети по умолчанию и доступен для других контейнеров в этой сети и может быть обнаружен ими по имени узла, идентичному имени контейнера.

Ссылки позволяют определить дополнительные псевдонимы, с помощью которых услуга доступна из другой службы. Они не обязаны включать службы для связи - по умолчанию любая служба может достигать любой другой службы под этим именем службы.

https://docs.docker.com/compose/networking/

Как создать базовую среду LAMP с сетью по умолчанию

докер-compose.yml

version: '2'
services:
  php:
     image: phpmyadmin/phpmyadmin
     links:
       - mysql:db
     depends_on:
       - mysql

  mysql:
    image: k0st/alpine-mariadb
    volumes:
      - ./data/mysql:/var/lib/mysql
    environment:
      - MYSQL_DATABASE=mydb
      - MYSQL_USER=myuser
      - MYSQL_PASSWORD=mypass 

  nginx:
    image: nginx:stable-alpine
    ports:
      - "81:80"
    volumes:
      - ./nginx/log:/var/log/nginx
      - ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
    depends_on:
      - php

Nginx / nginx.conf

worker_processes  1;
events {
  worker_connections  1024;
}
http {
  sendfile  off;
  server {
    listen 80;
 
    location / {
      proxy_pass  http://php;
      proxy_set_header Host $host;
      proxy_redirect     off;
    }
  }
}

Обратите внимание, что конфигурация nginx упрощена, но выше должна работать для тестирования - в основном все, что она делает, это проксирование приложения php. Карты в порт 81 во избежание конфликтов на хосте - при необходимости отрегулируйте.

Что касается связывания, вы можете увидеть , что при запуске: docker-compose exec mysql ping -c2 nginx для пинга из тузда контейнера в контейнер Nginx, вы добьетесь успеха , даже если нет ссылки , указанной между этими контейнерами. Docker Compose будет поддерживать эти ссылки в сети по умолчанию для вас.



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow