- local https://github.com/kubernetes-sigs/kind (or just use minikube if it works for you)
- cloud https://cloud.google.com/kubernetes-engine (for PersistentVolume and Ingress, I needed to try the real deal)
- practice environment: https://github.com/arush-sal/cka-practice-environment
| import org.bouncycastle.asn1.ASN1Encodable; | |
| import org.bouncycastle.asn1.DERSequence; | |
| import org.bouncycastle.asn1.x500.X500Name; | |
| import org.bouncycastle.asn1.x509.BasicConstraints; | |
| import org.bouncycastle.asn1.x509.Extension; | |
| import org.bouncycastle.asn1.x509.GeneralName; | |
| import org.bouncycastle.asn1.x509.KeyUsage; | |
| import org.bouncycastle.cert.X509CertificateHolder; | |
| import org.bouncycastle.cert.X509v3CertificateBuilder; | |
| import org.bouncycastle.cert.jcajce.JcaX509CertificateConverter; |
Rancher is an open source project that provides a complete platform for operating Docker in production. It provides infrastructure services such as multi-host networking, global and local load balancing, and volume snapshots.
This documentation describes how to run Rancher localy for development and evaluation propuses.
I'm using Docker for OSX (native) but even for this to work you will need to install VirtualBox.
This document assumes GitBash w/unix tools (or equivalent), VirtualBox, Docker-Toolbox/Docker is installed.
- Minikube:
- binary: https://storage.googleapis.com/minikube/releases/v0.8.0/minikube-windows-amd64.exe
- note: rename
minikube.exeand add to path
- Kubectl:
Once in a while, you may need to cleanup resources (containers, volumes, images, networks) ...
// see: https://github.com/chadoe/docker-cleanup-volumes
$ docker volume rm $(docker volume ls -qf dangling=true)
$ docker volume ls -qf dangling=true | xargs -r docker volume rm
| import jenkins.* | |
| import hudson.* | |
| import com.cloudbees.plugins.credentials.* | |
| import com.cloudbees.plugins.credentials.common.* | |
| import com.cloudbees.plugins.credentials.domains.* | |
| import com.cloudbees.jenkins.plugins.sshcredentials.impl.* | |
| import hudson.plugins.sshslaves.*; | |
| import hudson.model.* | |
| import jenkins.model.* | |
| import hudson.security.* |
Imagine that you are versioning your sourcecode in git and building your code via maven. You need to make releases before deploying to production regularly. What should be the strategy we need to follow for releasing?
I've used maven-release-plugin for years to make releases. It worked perfectly with maven and svn, but we started to face problems when we migrated our code to git and to make releases on git.
After checking the literature, we decided to use JGit-Flow which is a maven plugin based on and is a replacement for the maven-release-plugin enabling support for git-flow style releases via maven.
I do not want to explain the details much because there are many great posts explaining all.
| #!/bin/bash | |
| # Copies certain kinds of known files and directories from a given Jenkins master directory | |
| # into a git repo, removing any old ones, adds 'em, commits 'em, pushes 'em. | |
| set -ex | |
| if [ $# -ne 3 ]; then | |
| echo usage: $0 jenkins_home git_repos_url git_repos_name | |
| exit 1 | |
| fi |
| ########################################## | |
| # To run: | |
| # curl -sSL https://gist.githubusercontent.com/sirkkalap/e87cd580a47b180a7d32/raw/d9c9ebae4f5cf64eed4676e8aedac265b5a51bfa/Install-Docker-on-Linux-Mint.sh | bash -x | |
| ########################################## | |
| # Check that HTTPS transport is available to APT | |
| if [ ! -e /usr/lib/apt/methods/https ]; then | |
| sudo apt-get update | |
| sudo apt-get install -y apt-transport-https | |
| fi |
| #!/bin/bash | |
| # | |
| # Copies certain kinds of known files and directories from a given Jenkins master directory | |
| # into a git repo, removing any old ones, adds 'em, commits 'em, pushes 'em. | |
| # | |
| set -ex | |
| if [ $# -ne 2 ]; then | |
| echo usage: $0 root_dir jenkins_master |