1

我尝试通过以下 URL 的浏览器访问 Mercure 的中心但没有成功:http://locahost:3000 => ERR_CONNECTION_REFUSED

我使用 Docker 进行开发。这是我的 docker-compose.yml :

# docker/docker-compose.yml
version: '3'

services:
  database:
    container_name: test_db
    build:
      context: ./database
    environment:
      - MYSQL_DATABASE=${DATABASE_NAME}
      - MYSQL_USER=${DATABASE_USER}
      - MYSQL_PASSWORD=${DATABASE_PASSWORD}
      - MYSQL_ROOT_PASSWORD=${DATABASE_ROOT_PASSWORD}
    ports:
      - "3309:3306"
    volumes:
      - ./database/init.sql:/docker-entrypoint-initdb.d/init.sql
      - ./database/data:/var/lib/mysql

  php-fpm:
    container_name: test_php
    build:
      context: ./php-fpm
    depends_on:
      - database
    environment:
      - APP_ENV=${APP_ENV}
      - APP_SECRET=${APP_SECRET}
      - DATABASE_URL=mysql://${DATABASE_USER}:${DATABASE_PASSWORD}@database:3306/${DATABASE_NAME}?serverVersion=5.7
    volumes:
      - ./src:/var/www

  nginx:
    container_name: test_nginx
    build:
      context: ./nginx
    volumes:
      - ./src:/var/www
      - ./nginx/nginx.conf:/etc/nginx/nginx.conf
      - ./nginx/sites/:/etc/nginx/sites-available
      - ./nginx/conf.d/:/etc/nginx/conf.d
      - ./logs:/var/log
    depends_on:
      - php-fpm
    ports:
      - "8095:80"

  caddy:
    container_name: test_mercure
    image: dunglas/mercure
    restart: unless-stopped
    environment:
      MERCURE_PUBLISHER_JWT_KEY: '!ChangeMe!'
      MERCURE_SUBSCRIBER_JWT_KEY: '!ChangeMe!'
      PUBLISH_URL: '${MERCURE_PUBLISH_URL}'
      JWT_KEY: '${MERCURE_JWT_KEY}'
      ALLOW_ANONYMOUS: '${MERCURE_ALLOW_ANONYMOUS}'
      CORS_ALLOWED_ORIGINS: '${MERCURE_CORS_ALLOWED_ORIGINS}'
      PUBLISH_ALLOWED_ORIGINS: '${MERCURE_PUBLISH_ALLOWED_ORIGINS}'
    ports:
      - "3000:80"

我已成功执行:

docker-compose up -d

码头工人 ps -a :

CONTAINER ID   IMAGE                            COMMAND                  CREATED       STATUS       PORTS                                                      NAMES
0e4a72fe75b2   dunglas/mercure                  "caddy run --config …"   2 hours ago   Up 2 hours   443/tcp, 2019/tcp, 0.0.0.0:3000->80/tcp, :::3000->80/tcp   test_mercure
724fe920ebef   nginx                            "/docker-entrypoint.…"   3 hours ago   Up 3 hours   0.0.0.0:8095->80/tcp, :::8095->80/tcp                      test_nginx
9e63fddf50ef   php-fpm                          "docker-php-entrypoi…"   3 hours ago   Up 3 hours   9000/tcp                                                   test_php
e7989b26084e   database                         "docker-entrypoint.s…"   3 hours ago   Up 3 hours   0.0.0.0:3309->3306/tcp, :::3309->3306/tcp                  test_db

我可以通过 http://localhost:8095 访问我的 Symfony 应用程序,但我不知道应该通过哪个 URL 访问 Mercure 的中心。

谢谢你的帮助 !

4

0 回答 0