Skip to content

Instantly share code, notes, and snippets.

@jzaccone
Last active September 6, 2017 17:50
Show Gist options
  • Save jzaccone/06316ecd886871979bf23b28264c37c6 to your computer and use it in GitHub Desktop.
Save jzaccone/06316ecd886871979bf23b28264c37c6 to your computer and use it in GitHub Desktop.
# Download the project
git clone https://github.com/jzaccone/dotnet-docker-samples.git
# Create Docker Hub Account: https://hub.docker.com/
docker login
# Push Docker image to Docker hub
cd dotnet-docker-samples/aspnetapp/
docker build -t [docker hub username]/asp-net-app
docker push [docker hub username]/asp-net-app
# Go to https://hub.docker.com/ to verify
# Run image locally
docker run -it --rm -p 8000:80 --name asptest asp-net-app
# Deploy to kubernetes
kubectl apply -f deployment.yml --record
kubectl get deployments
# Edit deployment file (Change # of replicas etc)
nano deployment.yml
kubectl apply -f deployment.yml --record
#### Rolling Deployments #####
# Edit source
nano Controllers/HomeController.cs
# Rebuild and push
docker build -t [docker hub username]/asp-net-core:v2 .
docker push [docker hub username]/asp-net-core:v2
# Change deployment.yml to v2 and redeploy
nano deployment.yml
kubectl apply -f deployment.yml --record
# Get Rollout status
kubectl rollout status deployments asp-net-app
kubectl rollout history deployments asp-net-app
# Rollback the deployment
kubectl rollout undo deployments asp-net-app
# Create app with secrets
kubectl apply -f secret.yml
kubectl apply -f deployment_with_secrets.yml
kubectl exec -it [pod] bash
echo $USERNAME ; echo $PASSWORD
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment