當前我正在使用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撰寫共享文件夾
- 5. 無法使用Docker將mongodb與Rails容器連接撰寫
- 6. docker撰寫Django nginx
- 7. Mesos Slave - Docker撰寫
- 8. 問題與文件撰寫
- 9. 文件撰寫與整個
- 10. 在Docker中使用非虛擬文件夾撰寫爲卷
- 11. Docker撰寫與多階段構建
- 12. Docker撰寫正在生產
- 13. Docker撰寫和主機名
- 14. Docker撰寫依賴關係
- 15. Docker撰寫和定製包
- 16. Docker ELK中的Logstash配置文件撰寫文件
- 17. Docker撰寫使用Docker運行刪除容器開始
- 18. 在主機系統上使用運行容器的文件使用docker撰寫
- 19. 在撰寫文件
- 20. 無法使用Docker安裝軟件包撰寫
- 21. 如何將幾個數據庫文件與numpy結合使用?
- 22. 基於Docker撰寫單個圖像撰寫容器
- 23. 使用Javascript PHP文件撰寫
- 24. 如何使卷永久與Docker撰寫v2
- 25. 撰寫與條件邏輯
- 26. 將GWT與數據庫結合使用
- 27. 將TabLayout與BottomNavigationView結合使用 - support.design庫
- 28. 撰寫文件中的模板語法Docker
- 29. Docker撰寫文件無效,不允許其他屬性
- 30. Docker撰寫Rails教程:這些文件去了哪裏?
根據官方建議,Docker並不是用於在生產環境中部署Vault的最佳解決方案:https://www.vaultproject.io/guides/production.html –
說明:您是否在* docker-compose中設置保險庫* - 或者您是否想要在Docker中設置一項服務 - 撰寫*使用*保管庫? – zaTricky