當前我正在使用docker-compose文件來設置我的dev/prod環境。我使用環境變量來存儲祕密,數據庫憑證等。經過一番搜索,我發現可以使用保險櫃來保護憑證。我嘗試了幾個有關Vault的基本示例,但仍然不知道如何將Vault與docker-compose文件一起使用。有人能指點我一個正確的方法嗎?如果Vault不是docker-compose的好解決方案,我可以使用什麼機制來保護證書,而不是將它們作爲純文本存儲在環境中。將保管庫與Docker撰寫文件結合使用
3
A
回答
2
這是我當前在dev中使用Vault的docker-compose配置,但我在生產中使用專用服務器(不是Docker)。
# docker_compose.yml
version: '2'
services:
myvault:
image: vault
container_name: myvault
ports:
- "127.0.0.1:8200:8200"
volumes:
- ./file:/vault/file:rw
- ./config:/vault/config:rw
cap_add:
- IPC_LOCK
entrypoint: vault server -config=/vault/config/vault.json
體積坐騎確保金庫配置被保存,如果你必須重建容器。
使用「文件」的後端,使爲泊塢窗/ Git的這種設置可移植的,你還需要創建一個名爲config
目錄,並把這個文件進去,命名爲vault.json
:
# config/vault.json
{
"backend": {"file": {"path": "/vault/file"}},
"listener": {"tcp": {"address": "0.0.0.0:8200", "tls_disable": 1}},
"default_lease_ttl": "168h",
"max_lease_ttl": "0h"
}
注意:
儘管ROOT_TOKEN
在此配置中是靜態的(不會在容器構建之間更改),但爲app_role
發出的任何生成的VAULT_TOKEN
將在每次必須解除保管庫時被禁用。
我發現Vault有時會在容器重新啓動時變爲密封。
+0
順便提一下,這種設置允許我將dev-vault狀態存儲到版本控制庫(如Git),因此dev-vault實例可以輕鬆構建在其他開發人員的盒子上,而無需發出所有vault-config設置命令或將它們構建爲腳本。 – StampyCode
相關問題
- 1. 指定env文件docker撰寫使用
- 2. Docker撰寫和卷與Apache
- 3. Docker撰寫.env文件數組變量
- 4. docker撰寫Django nginx
- 5. Mesos Slave - Docker撰寫
- 6. NS_ERROR_XPC_BAD_CONVERT_JS與文件撰寫
- 7. 問題與文件撰寫
- 8. 在Docker中使用非虛擬文件夾撰寫爲卷
- 9. Docker撰寫與多階段構建
- 10. Docker撰寫依賴關係
- 11. Docker撰寫和主機名
- 12. Docker撰寫正在生產
- 13. Docker ELK中的Logstash配置文件撰寫文件
- 14. 在主機系統上使用運行容器的文件使用docker撰寫
- 15. 在撰寫文件
- 16. 如何將幾個數據庫文件與numpy結合使用?
- 17. 無法使用Docker安裝軟件包撰寫
- 18. 使用Javascript PHP文件撰寫
- 19. 基於Docker撰寫單個圖像撰寫容器
- 20. 將TabLayout與BottomNavigationView結合使用 - support.design庫
- 21. 將GWT與數據庫結合使用
- 22. 將csv文件與通用文件標識符結合使用
- 23. 撰寫文件中的模板語法Docker
- 24. Docker撰寫文件無效,不允許其他屬性
- 25. 我們是否可以使用撰寫文件擴展Docker鏡像
- 26. 將環境變量傳遞到通過撰寫yaml構建的docker文件
- 27. 撰寫使用RX
- 28. Swift:Streaming /撰寫CSV文件
- 29. 文件撰寫問題
- 30. 延遲文件撰寫
根據官方建議,Docker並不是用於在生產環境中部署Vault的最佳解決方案:https://www.vaultproject.io/guides/production.html –
說明:您是否在* docker-compose中設置保險庫* - 或者您是否想要在Docker中設置一項服務 - 撰寫*使用*保管庫? – zaTricky