Я пытаюсь запустить контейнер докеров с nginx на кластере кубернетов. Я использую обнаружение службы переменных окружения для всех моих других контейнеров, поэтому я хотел бы поддерживать его согласованность и не должен приводить что-то вроде skydns в микс только из-за этого. Возможно ли получить доступ к переменным окружения в nginx, чтобы я мог передать его proxy-pass службе kubernetes?Могут ли переменные среды доступа nginx.conf?
ответ
Было немало проблем с выполнением хакерского HEREDOC, в том числе с наличием только одного сервисного обнаружения (не намного лучше жесткого кодирования). Таким образом, мое решение закончилось тем, что использовало confd для шаблона nginx и перезапускал nginx при изменении переменных среды. Вот ссылка на confd: https://github.com/kelseyhightower/confd
В спецификации вы можете определить переменную окружения, например.
spec:
containers:
- name: kibana-logging
image: gcr.io/google_containers/kibana:1.3
livenessProbe:
name: kibana-liveness
httpGet:
path:/
port: 5601
initialDelaySeconds: 30
timeoutSeconds: 5
env:
- name: "ELASTICSEARCH_URL"
value: "http://elasticsearch-logging:9200"
ports:
- containerPort: 5601
name: kibana-port
protocol: TCP
Это приведет к переменной ELASTICSEARCH_URL среды должен быть установлен в http://elasticsearch-logging:9200. Будет ли это работать на вас?
Приветствие,
Сатно
Нет, я знаю, что я мог бы это сделать, он использует эту среду, которая может быть envariable в nginx, о которой мне интересно. –
Вы имеете в виду использовать значение набора вара окр таким образом, в конфигурационный файл для Nginx? Одна вещь, которую я делал в прошлом, - это иметь сценарий конфигурации run.sh, который запускается контейнером Docker, который использует переменную env для подстановки в файле шаблона для конфигурации nginx - это вы имели в виду?
Это не на 100% ясно, что вы говорите, можете ли вы привести пример? Но чтобы ответить на ваш вопрос, да, я хочу использовать эти переменные среды в моей конфигурации nginx. –
Как насчет этого сценария оболочки, под которым работает контейнер Docker?
Спасибо, что работает, любой шанс, что вы можете сконденсировать свои ответы в один ответ, так что это немного более организовано? –
Сохранение включенного конфигурационного файла в ConfigMap, смонтированном как том, также должно работать.
Возможно, для этого вам, возможно, потребуется изменить структуру конфигурационных файлов.
- 1. Могут ли .emacs читать переменные среды?
- 2. фреймворка доступа переменные среды
- 3. Переменные среды доступа от Foxx
- 4. Laravel 4 переменные среды доступа
- 5. Как передать переменную системной среды в nginx.conf
- 6. Cant переменные среды доступа в PHP
- 7. Переменные среды доступа от Spark Worker
- 8. Переменные среды узла доступа в файле Jade
- 9. Отсутствующие переменные среды nginx container
- 10. Экспортированные переменные среды vs Переменные среды
- 11. Java, могут ли переменные regex принимать переменные?
- 12. Можно ли использовать переменные среды в php.ini?
- 13. Замените переменные среды .NET
- 14. Могут ли набираться переменные JavaScript?
- 15. Могут ли переменные быть украшены?
- 16. Как хранить переменные среды
- 17. Переменные среды
- 18. Могут ли маркеры доступа oauth доступа?
- 19. переменные среды системы Linux и переменные пользовательской среды
- 20. Могут ли нестатические методы изменять статические переменные
- 21. React: Использовать переменные среды
- 22. Переменные реестра Windows и переменные среды?
- 23. Переменные среды и PHP
- 24. Переменные среды Ruby?
- 25. mod_rewrite: почему переменные среды не могут использоваться для предотвращения рекурсии?
- 26. Переменные среды доступа на этапе компиляции в Угловом CLI
- 27. Использует ли jna.library.path любые переменные среды?
- 28. Являются ли языковые переменные среды конкретными?
- 29. Расширяются ли переменные среды при поиске PATH?
- 30. Поддерживает ли переменные среды поддержки движка google?
[Этот вопрос о сервере] [1] должен содержать ответ на ваш вопрос. [1]: http://serverfault.com/questions/577370/how-can-i-use-environment-variables-in-nginx-conf –
Это работает, но довольно Hacky, я видел это, но я надеюсь, что есть «кубернетовский способ» этого. –