EventStore Docker Работает, но не может получить доступ к URL-адресу с хоста - порт не работает - PullRequest
0 голосов
/ 14 июля 2020

Впервые окунаюсь в мир Docker контейнеров. Моя хост-среда - Windows 10 Enterprise на виртуальной машине. Я могу запустить docker и использовать Linux режим контейнера. Docker Движок: v19.03.8

, начиная с контейнера Evenstore -

 [https://github.com/EventStore/eventstore-docker][1]

Я создал файл создания

version: '3.8'

services:

  eventstore:
    container_name: productservice-eventstore
    image: eventstore/eventstore
    ports:
        - 2113:2113
        - 1113:1113
    environment:
      - EVENTSTORE_EXT_HTTP_PORT=2113
      - EVENTSTORE_EXT_TCP_PORT=1113 
      - EVENTSTORE_DEV=true

Я использую Eventstore в стадии разработки, чтобы избежать требований TLS

Контейнер запускается и отображается как работающий на docker приборной панели, но я не могу получить доступ к пользовательскому интерфейсу с помощью

http://localhost:2113/

enter code here
This site can’t be reachedlocalhost refused to connect.
Try:

Checking the connection
Checking the proxy and the firewall
ERR_CONNECTION_REFUSED

Из документов я понимаю, что -P 2113: 2113 выполняет переадресацию портов. Я даже изменил внешний порт на 8085, но все еще не работает.

Мне нужна помощь в доступе к пользовательскому интерфейсу Eventstore с виртуальной машины хоста.

Вопрос 2) можем ли мы назначить внешний IP-адрес контейнеру EventStore через создать файл (переменные среды), который можно использовать непосредственно на хосте вместо сопоставления.

Сообщите мне, если вам нужна информация из журналов

****** Редактировать 1 **** *

После проработки изменений в файле композиции в моем ответе ниже я смог заставить пользовательский интерфейс работать в Edge, но с некоторыми ошибками

A) Microsoft Edge

  1. enter image description here

2)enter image description here

B) Chrome

  1. enter image description here
  2. введите описание изображения здесь

Из Power Shell:

productservice-eventstore | ========================================================================================================
productservice-eventstore | DEVELOPMENT MODE IS ON. THIS MODE IS *NOT* INTENDED FOR PRODUCTION USE.
productservice-eventstore | WHEN IN DEVELOPMENT MODE EVENT STORE WILL
productservice-eventstore |  - NOT WRITE ANY DATA TO DISK.
productservice-eventstore |  - USE A SELF SIGNED CERTIFICATE.
productservice-eventstore | ========================================================================================================
productservice-eventstore |
productservice-eventstore | [    1, 1,13:43:36.155,INF]
productservice-eventstore | INTERFACES
productservice-eventstore | External TCP (Protobuf)
productservice-eventstore |     Enabled : True
productservice-eventstore |     Port    : 1113
productservice-eventstore | HTTP (AtomPub)
productservice-eventstore |     Enabled : True
productservice-eventstore |     Port    : 2113

При попытке доступа с хоста с использованием Edge или chrome

productservice-eventstore | [    1,33,14:12:31.955,ERR] Client certificate validation error: "The certificate provided by the client failed validation with the following error(s): RemoteCertificateChainErrors (PartialChain)

** Вопрос 3 **

Можно ли загрузить самоподписанный сертификат и добавить его в режим доверия клиентов?

1 Ответ

1 голос
/ 14 июля 2020

Итак, я пытался искать разные способы в Google и наткнулся на проблему в Eventstore Github, которая дала мне хорошее направление

https://github.com/EventStore/EventStore/issues/2547

Davide Guida была аналогичная проблема, и ответы Питера Гермишуйса помогли мне

command: --dev --enable-external-tcp --ext-ip=0.0.0.0 --int-ip=0.0.0.0 --disable-external-tcp-tls

или, чтобы быть точным c

--enable-external-tcp 

, в конечном итоге дали мне хороший перерыв.

Проблема в том, что не полностью разрешено из-за необходимости сертификата, который, как я ожидал, не требовался при работе в режиме Dev

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...