Я использую Paramiko в своем приложении Flask для запуска некоторых команд на внешнем сервере. Я использую docker-compose для локальной разработки, а моя постановка / производство использует kubernetes.
Я хочу сохранить мой ключ pem как переменную окружения, но я пытаюсь заставить его работать. Я пробовал различные варианты следующих безрезультатно. Я также читал на форумах, что другие нашли ту же проблему, но не ясно, решали ли (или как) ее. Это то, что я до сих пор ...
Я храню мой ключ pem в файле .env
:
PEM_KEY="-----BEGIN RSA PRIVATE KEY-----
I CXYEpAIBAAKCAQEAj7sLQn55KXRyfT0h/f5E1lXX9fJ1NbBA7zcKkCCIv2uXY0fWZbInQoAT1DMk
2OBi1PrJJcz6E5t1u2gwKomz612d24xQeqiqDN1eEX4ab2EFzTjxw57NqpIJsrIY6H68mNn3Tp0i
....
-----END RSA PRIVATE KEY-----"
Выше показан ключ, заключенный в двойные кавычки, но я пробовал другие варианты, включая одинарные, без кавычек, добавление \ n между строками и т. Д. Безрезультатно.
Мой docker-compose
выглядит так:
---
version: '2'
services:
web:
build:
context: .
dockerfile: Dockerfile.web
restart: always
environment:
- PEM_KEY=${PEM_KEY}
Чтобы проверить, я печатаю свой ключ к экрану, но независимо от того, что я пытаюсь, я либо получаю частичный ключ, например:
-----BEGIN RSA PRIVATE KEY-----
... или я не могу удалить символы новой строки:
-----BEGIN RSA PRIVATE KEY-----\nICXYEpAIBAAKCAQEAj7sLQn55KXRyfT0h/f5E1lXX9fJ1NbBA7zcKkCCIv2uXY0fWZbInQoAT1DMk\n2OBi1PrJJcz6E5t1u2gwKomz612d24xQeqiqDN1eEX4ab2EFzTjxw57NqpIJsrIY6H68mNn3Tp0i\n....\n-----END RSA PRIVATE KEY-----
Буду очень признателен за любые предложения, как это исправить.
Заранее спасибо.