Как связаться с homeserver (который подключен к моему VPS через wireguard) и VPS запускает nginx -proxy + companion через docker - PullRequest
1 голос
/ 30 апреля 2020

Следующая настройка:

В сети на моем VPS в центре обработки данных: Ubuntu Server (18.04) работает. Docker работает. Nginx -proxy и letsencrypt компаньон запущены. Сервер Wireguard установлен. IP-адрес сервера Wireguard: 10.0.0.1

Дома: я запускаю сервер Ubuntu (18.04) на моем p c. Сервер nginx (docker) запущен и работает. Я могу связаться с ним через мои LAN-клиенты по его IP. Клиент Wireguard установлен и подключен к серверу Wireguard на моем VPS. (Домашняя страница P C имеет IP-адрес проводной защиты 10.0.0.10)

Оба VPS и P C могут пропинговать и достигать друг друга через свою сеть 10.0.0.0/24. Я могу получить доступ к веб-серверу на моем домашнем сервере P C с моего vps без проблем. (Я выставляю порт 8080 на моем домашнем сервере P C, который работает nginx в docker).

Теперь проблема:

Как я могу разрешить моему nginx -прокси & letsencrypt companion достигает IP-адреса моих домашних серверов моего проводного соединения, чтобы я мог подключиться (защищенный с помощью Letsencrypt SSL) к своему домашнему веб-серверу p c через inte rnet? Я попробовал некоторые вещи, которые не сработали:

## OPTION 1
  homeservertest1:
    restart: always
    image: cwempe/docker-dummy:latest
    environment:
      VIRTUAL_HOST: homeserver.mydomain.com
      VIRTUAL_PORT: 8080
      LETSENCRYPT_HOST: homeserver.mydomain.com
      LETSENCRYPT_EMAIL: user@provider.com
      UPSTREAM_NAME: http://10.0.0.10

Опция 1 возвращает «502 Bad Gateway» в браузере.

## OPTION 2
  homeservertest2:
    restart: always
    image: qoomon/docker-host
    cap_add: [ 'NET_ADMIN', 'NET_RAW' ]
    expose:
      - "10.0.0.10:8080"
    environment:
      VIRTUAL_HOST: homeserver.mydomain.com
      LETSENCRYPT_HOST: homeserver.mydomain.com
      LETSENCRYPT_EMAIL: user@provider.com

Опция 2 не может быть запущена, так как docker жалуется как это:

services.homeservertest2.expose is invalid: should be of the format 'PORT[/PROTOCOL]'

Я ценю любую помощь / идеи о том, как решить эту проблему, чтобы мой домашний сервер работал через мое публичное c имя домена ssl в зашифрованном виде.

Спасибо

...