Eu folosesc Mercure hub 0.13, totul funcționează bine pe mașina mea de dezvoltare, dar pe serverul meu de testare hub-ul continuă să încerce să se lege pe portul 80, rezultând o eroare, deoarece nginx rulează deja pe portul 80.
rulare: se încarcă configurația inițială: se încarcă configurația nouă: modul aplicație http: pornire: tcp: ascultare pe :80: ascultare tcp :80: bind: adresa deja utilizată
Pornesc hub-ul cu următoarea comandă:
MERCURE_PUBLISHER_JWT_KEY=$(cat publisher.key.pub) \
MERCURE_PUBLISHER_JWT_ALG=RS256 \
MERCURE_SUBSCRIBER_JWT_KEY=$(cat publisher.key.pub) \
MERCURE_SUBSCRIBER_JWT_ALG=RS256 \
./mercure run -config Caddyfile.dev
Caddyfile.dev este după cum urmează:
# Aflați cum să configurați Mercure.rocks Hub pe https://mercure.rocks/docs/hub/config
{
{$GLOBAL_OPTIONS}
}
{$SERVER_NAME:localhost:3000}
Buturuga
traseu {
redir / /.cunoscut/mercure/ui/
codificați zstd gzip
mercure {
# Transport de utilizat (implicit la Bolt)
transport_url {$MERCURE_TRANSPORT_URL:bolt://mercure.db}
# Cheie JWT pentru editor
publisher_jwt {env.MERCURE_PUBLISHER_JWT_KEY} {env.MERCURE_PUBLISHER_JWT_ALG}
# Cheie JWT abonatului
subscriber_jwt {env.MERCURE_SUBSCRIBER_JWT_KEY} {env.MERCURE_SUBSCRIBER_JWT_ALG}
# Configurare permisivă pentru mediul de dezvoltare
cors_origins *
publish_origins *
demonstrație
anonim
abonamente
# Directive suplimentare
{$MERCURE_EXTRA_DIRECTIVES}
}
răspunde /healthz 200
răspunde „Nu a fost găsit” 404
}
Când furnizez SERVER_NAME ca variabilă de mediu, fără domeniu, SERVER_NAME=:3000
, hub-ul începe de fapt pe portul 3000, dar rulează în modul http, care permite doar abonamente anonime și nu este ceea ce am nevoie.
Server:
Sistem de operare: CentOS Stream 8
Kernel: Linux 4.18.0-383.el8.x86_64
Arhitectură: x86-64
Ieșire completă când încercați să porniți hub-ul Mercure:
2022/05/10 04:50:29.605 INFO folosind configurația furnizată {"config_file": "Caddyfile.dev", "config_adapter": ""}
2022/05/10 04:50:29.606 Intrarea WARN nu este formatată cu „caddy fmt” {"adapter": "caddyfile", "file": "Caddyfile.dev", "line": 3}
2022/05/10 04:50:29.609 INFO punctul final de administrare admin a început {"address": "tcp/localhost:2019", "enforce_origin": false, "origins": ["localhost:2019", "[::1" ]:2019", "127.0.0.1:2019"]}
2022/05/10 04:50:29.610 INFO http activarea automată a redirecționărilor HTTP->HTTPS {"server_name": "srv0"}
2022/05/10 04:50:29.610 INFO tls.cache.maintenance a început întreținerea certificatului de fundal {"cache": "0xc0003d6150"}
2022/05/10 04:50:29.627 INFO tls cleaning storage unit {"description": "FileStorage:/root/.local/share/caddy"}
2022/05/10 04:50:29.628 INFO tls finalizat curatarea unitatilor de depozitare
2022/05/10 04:50:29.642 INFO certificatul rădăcină pki.ca.local este deja de încredere de către sistem {"path": "storage:pki/authorities/local/root.crt"}
2022/05/10 04:50:29.643 INFO tls.cache.maintenance a oprit întreținerea certificatului de fundal {"cache": "0xc0003d6150"}
rulare: se încarcă configurația inițială: se încarcă configurația nouă: modul aplicație http: pornire: tcp: ascultare pe :80: ascultare tcp :80: bind: adresa deja utilizată