0

我想用 NGINX 和 Let's Encrypt 建立一个 MQTT(代理)服务器。

有关信息,我将这个存储库用于 NGINX 和 Let's Encrypt: https ://github.com/evertramos/docker-compose-letsencrypt-nginx-proxy-companion

这是图表:

在此处输入图像描述

我已经有几个网站了。(wordpress,搬运工,...)

这是我的 docker-compose.yml :

version: '3'
services:
  mosquitto:
    container_name: ${CONTAINER_MQTT_WEB}
    image: eclipse-mosquitto:latest
    restart: always
    ports:
       - "1883:1883"
       - "9001:9001"
    volumes:
      - ./data-mosquitto/config/mosquitto.conf:/mosquitto/config/mosquitto.conf
      - ./data-mosquitto/data:/mosquitto/data
      - ./data-mosquitto/log:/mosquitto/log
    environment:
      - DOMAIN= ${DOMAINS}
      - VIRTUAL_HOST= ${DOMAINS}
      - LETSENCRYPT_HOST= ${DOMAINS}
      - LETSENCRYPT_EMAIL= ${LETSENCRYPT_EMAIL}

networks:
    default:
       external:
         name: ${NETWORK}

这是我的环境文件(.env):

# Creation TOF
# Contact : My  EMAIL
#
# Containers name
CONTAINER_MQTT_WEB=MQTT_web-ssl

# Host
DOMAINS=mqtt.mywebsite.com
LETSENCRYPT_EMAIL=email@mywebsite.com
#
# Network name
#
# Your container app must use a network conencted to your webproxy
# https://github.com/evertramos/docker-compose-letsencrypt-nginx-proxy-companion
#
NETWORK=webproxy

我有一个错误,但我不明白...

Creating MQTT_web-ssl ... error

ERROR: for MQTT_web-ssl  Cannot start service mosquitto: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: rootfs_linux.go:59: mounting "/home/theking/Docker/docker-mosquitto-nginx-letsencrypt/data-mosquitto/config/mosquitto.conf" to rootfs at "/home/.../dockerdrive/overlay/ee4ef10d2f021c03b1556d9547f8c877d83c9128cad37c2a2a4ba1ff2c367d40/merged/mosquitto/config/mosquitto.conf" caused: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type

谢谢您的帮助 :)

有美好的一天

克里斯托夫

4

1 回答 1

0

对于 docker-compose.yml 是可以的:

version: '3.5'
services:
  mosquitto:
    container_name: ${CONTAINER_MQTT_WEB}
    image: eclipse-mosquitto:latest
    restart: always
    ports:
       - "1883:1883"
       - "9001:9001"
    volumes:
      - ./mosquitto/data:/mosquitto/data
      - ./mosquitto/logs:/mosquitto/logs
      - ./mosquitto/config:/mosquitto/config:ro
    environment:
      - DOMAIN= ${DOMAINS}
      - VIRTUAL_HOST= ${DOMAINS}
      - LETSENCRYPT_HOST= ${DOMAINS}
      - LETSENCRYPT_EMAIL= ${LETSENCRYPT_EMAIL}

networks:
    default:
       external:
         name: ${NETWORK}

但现在我有一个错误

MQTT_web-ssl | 1615542527:错误:地址不可用

这是我的存储库: https ://github.com/Tofdu31/docker-mosquitto-nginx-letsencrypt

于 2021-03-12T10:30:13.790 回答