Я пытаюсь защитить мое mattermost
соединение через Caddy
.Наиболее близким является micheljung answer
Способ настройки сети и приложения не имеет смысла.Теперь это работает.Что я сделал:
Включить Let's Encrypt и переадресацию с порта 80 на 443
Позволяет приложению открывать порты 80 и 443 (настроить в Dockerfile и в docker-compose.yml)
Удалить веб-контейнер, потому что егоединственной целью был в основном SSL, который теперь обрабатывает Mattermost
Прибыль!
Я последовал его ответу.Но я не могу использовать функцию websocket
Вот что я попробовал
Caddyfile
chat.{$DOMAIN_NAME} {
proxy / app:8000
}
Dockerfile
FROM abiosoft/caddy:0.11.2
COPY Caddyfile /etc/Caddyfile
docker-compose.yml
version: "2"
services:
db:
build: db
read_only: true
restart: unless-stopped
volumes:
- ./volumes/db/var/lib/postgresql/data:/var/lib/postgresql/data
- /etc/localtime:/etc/localtime:ro
environment:
- POSTGRES_USER=mmuser
- POSTGRES_PASSWORD=mmuser_password
- POSTGRES_DB=mattermost
app:
build:
context: app
args:
- edition=team
restart: unless-stopped
volumes:
- ./volumes/app/mattermost/config:/mattermost/config:rw
- ./volumes/app/mattermost/data:/mattermost/data:rw
- ./volumes/app/mattermost/logs:/mattermost/logs:rw
- ./volumes/app/mattermost/plugins:/mattermost/plugins:rw
- ./volumes/app/mattermost/client-plugins:/mattermost/client/plugins:rw
- /etc/localtime:/etc/localtime:ro
expose:
- 8000
environment:
# set same as db credentials and dbname
- MM_USERNAME=mmuser
- MM_PASSWORD=mmuser_password
- MM_DBNAME=mattermost
caddy:
build:
context: .
dockerfile: Dockerfile
depends_on:
- app
volumes:
- production_caddy:/root/.caddy
environment:
- DOMAIN_NAME=unicornonzen.com
ports:
- "0.0.0.0:80:80"
- "0.0.0.0:443:443"
volumes:
production_caddy: {}
Как правильно настроить Caddy
и mattermost
вместе?