Skip to content

nicholasjackson/vault-dev-patterns

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Application Development Patterns managing secrets with HashiCorp Vault and Kubernetes

This repository contains example patterns to help secure Kubernetes applications.

Patterns

  • Static Secrets
  • Dynamic Database Credentials
  • Generating X509 Keys and Certificates for TLS endpoints
  • Using Vault's encyrption as a service to encrypt personally identifiable data

Contents

  • application - Go based sample application
  • blueprint - Shipyard blueprint for creating K8s and Vault cluster locally

Requirements for running examples

The example Kubernetes application runs locally on your computer, no cloud needed just two simple tools:

Running the examples

All required resources, and documentation are created using Shipyard.

Running the command shipyard run ./blueprint will create and configure the following elements using Docker.

➜ shipyard run ./blueprint 
Running configuration from:  ./blueprint

2020-04-30T14:06:33.482+0100 [DEBUG] Statefile does not exist
2020-04-30T14:06:33.482+0100 [INFO]  Creating Network: ref=cloud

Shipyard is cross platform and works on Windows, Linux, and Mac.

Interacting with the demo

You can interact with the demo stack either throught the interactive documentation or by setting the following environment variables and using your local tooling.

KUBECONFIG=$HOME/.shipyard/config/k3s/kubeconfig.yaml
VAULT_ADDR=http://vault.ingress.shipyard.run:8200
VAULT_TOKEN=root

Setting the environment variables is also possible using the Shipyard env command:

eval $(shipyard env)

Destroying the demo

To destroy the demo simply run the following command:

shipyard destroy

About

Various HashiCorp Vault development patterns

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published