Running HTTPS node

Hello, I created node connection via docker like in this guide Running in production - Ceramic Developers with http all working, but when I switch to https://nodeUrl:7007 I got error ERR_SSL_PROTOCOL_ERROR. Where can I move connection from http to https?

Do you have an SSL certificate configured for your domain?

Yes, I use certbot and have domain

Ok, can you post a more detailed error log?

$ curl https://nodeUrl:7007/api/v0/node/healthcheck
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number

When I use docker logs js-ceramic - there are no errors in node.

Config


{
  "anchor": {},
  "http-api": {
    "cors-allowed-origins": [
      ".*"
    ]
  },
  "ipfs": {
    "mode": "bundled"
  },
  "logger": {
    "log-level": 2,
    "log-to-files": false
  },
  "metrics": {
    "metrics-exporter-enabled": false,
    "metrics-port": 9090
  },
  "network": {
    "name": "testnet-clay"
  },
  "node": {},
  "state-store": {
    "mode": "fs",
    "local-directory": "/root/.ceramic/statestore/"
  },
  "indexing": {
    "db": "sqlite:///root/.ceramic/indexing.sqlite",
    "allow-queries-before-historical-sync": true,
    "models": []
  }
}

Can you confirm that hitting https://nodeUrl hits your nginx? That’s where HTTPS should be terminated and that is likely where the error is coming from.

If you’re hitting Ceramic directly, then it won’t work because Ceramic doesn’t understand HTTPS.