getmeli / meli

Platform for deploying static sites and frontend applications easily. Automatic SSL, deploy previews, reverse proxy, and more.
Other
2.4k stars 97 forks source link

Adding a manually created SSL certificate to Meli #258

Open tobias-scheepers opened 1 year ago

tobias-scheepers commented 1 year ago

Hi all, I'm trying to set up Meli behind a NAT and have manually created a Let's Encrypt certificate for Caddy as indicated in the Reverse proxy part of the documentation. Now I'd like to have Meli/Caddy use these manually generated certificate when serving. It seams however MELI_HTTPS_AUTO can only switch between fully automated provisioning of certificates or delegating this to a different reverse proxy completely. Please see below the attempt to get this up and running using just changes to the docker-compose.yml file.

Modified  version: "3"
services:

  meli:
    image: getmeli/meli:beta
    ports:
      - 80:80
      - 443:443
    environment:
      # no trailing slash !
      MELI_URL: https://meli.website.app
      MELI_MONGO_URI: mongodb://mongo:27017/meli
      # openssl rand -hex 32
      MELI_JWT_SECRET: change_this
      # https://docs.meli.sh/authentication
      MELI_USER: admin
      MELI_PASSWORD: admim
      MELI_HTTPS_AUTO: 0
      MELI_ACME_CA_PATH: /letsencrypt

      SSL_TYPE: manual
      SSL_CERT_PATH: /letsencrypt/fullchain.pem
      SSL_KEY_PATH: /letsencrypt/privkey.pem

    volumes:
      - ./data/sites:/sites
      - ./data/files:/files
      - ./data/caddy/data:/data
      - ./data/caddy/config:/config
      - /etc/letsencrypt/live/meli.website.app:/letsencrypt
    depends_on:
      - mongo

  mongo:
    image: mongo:4.2-bionic
    restart: unless-stopped
    volumes:
      - ./data/mongo:/data/db