EACCESS Отказано в доступе к файлам сертификатов SSL при запуске производственного сервера Phoenix - PullRequest
0 голосов
/ 26 апреля 2018

Я добавил несколько свежих SSL-сертификатов Let's Encrypt в мое приложение Phoenix, как описано в руководстве здесь: https://phoenixframework.readme.io/docs/configuration-for-ssl

Когда я пытаюсь запустить свой сервер в производственном режиме, я получаю следующую ошибку:

23:04:11.573 [info] Running MyAppWeb.Endpoint with Cowboy using http://:::4000
23:04:11.652 [error] Failed to start Ranch listener MyAppWeb.Endpoint.HTTPS in :ranch_ssl:listen([certfile: '/Users/FJ/projects/elixir/my_app/_build/prod/lib/my_app/priv/ssl/cert.crt', keyfile: '/Users/FJ/projects/elixir/my_app/_build/prod/lib/my_app/priv/ssl/priv.key', port: 443]) for reason :eacces (permission denied)

Я не понимаю, почему это происходит, потому что я дал файлам практически все права на чтение:

ls -la priv/ssl/
total 16
drwxr-xr-x  4 FJ  staff   128 Apr 25 23:09 ./
drwxr-xr-x  9 FJ  staff   288 Apr 25 23:09 ../
-rw-r--r--  1 FJ  staff  1708 Apr 25 23:02 cert.crt
-rw-r--r--  1 FJ  staff  1708 Apr 25 23:03 priv.key

Я использую MacOS локально, но в своей производственной среде (Alpine Linux) У меня та же ошибка.

Вот часть SSL производственной конфигурации Endpoint:

  https: [port: 443,
        otp_app: :my_app,
        keyfile: "priv/ssl/priv.key",
        certfile: "priv/ssl/cert.crt"
        ]
...