- Install Skaffold: https://skaffold.dev/docs/install/
- Install kubectl: https://kubernetes.io/docs/tasks/tools/install-kubectl/
- Install minikube: https://minikube.sigs.k8s.io/docs/start/
You may also need stern and kubectx.
Start minikube:
bin/start-minikube
In the root of the repo, run: bin/dev
. This script will start the development cluster with skaffold. The initial build will take a while but after that is done, everything should be relatively quick.
You can monitor the process by running bin/pods
in another terminal.
TIP: For multiple terminal windows, we recommend you to use a terminal with split window support for convenience. For Linux, one good option is Tilix.
After skaffold has started up, we need to add a local domain name so that we can access the ingress of the cluster.
List ingresses with kubectl and grab the IP address for project-331-ingress
:
kubectl get ingress
Next, add a hosts entry for the IP address you got from the previous command:
ip-from-previous-command project-331.local
You can find the hosts file in Linux from /etc/hosts
.
After that, you should be able to access the application by going to http://project-331.local/
in your web browser. Take a look at kubernetes/ingress.yml
to see how requests are routed to different services.
Install the following tools with chocolatey:
- Kubectl: https://kubernetes.io/docs/tasks/tools/install-kubectl/
- Minikube: https://minikube.sigs.k8s.io/docs/start/
You may also need stern and kubectx.
- Install Windows Terminal
- Install Cygwin
- During installation of Cygwin you will be prompted for additional packages, these are needed:
postgres-client
&procps-ng
- During installation of Cygwin you will be prompted for additional packages, these are needed:
- Open Windows Terminal and press the small arrow down and open Settings (as JSON), add the following:
profiles: {
...
list: [
...
{
"guid": "{00000000-0000-0000-0000-000000000001}",
"commandline": "C:/cygwin64/Cygwin.bat",
"icon": "C:/cygwin64/Cygwin-Terminal.ico",
"hidden": false,
"name": "Cygwin"
}
]
}
- Download Skaffold latest stable release for Windows and save it under
C:\Binary
. - Rename the executable to
skaffold.exe
. - Start
cmd
orPowershell
as administrator and run:rundll32.exe sysdm.cpl,EditEnvironmentVariables
- Under System variables click the Path row and click button
Edit...
, click buttonNew
and type in the row:C:\Binary\
. - Check with
Git Bash
orCygwin
that Skaffold is in correct folder by runningwhich skaffold
.
Install Virtualbox.
NOTE: You may need the
--no-vtx-check
parameter on some Windows version forbin/start-minikube
command when using Virtualbox, please try to run the command without it first and see if it works.
Example:
bin/start-minikube (--no-vtx-check)
Start Windows Terminal (Make sure you are using Cygwin terminal)
In the root of the repo, run: bin/dev
. This script will start the development cluster with skaffold. The initial build will take a while but after that is done, everything should be relatively quick.
You can monitor the process by running bin/pods
in another Cygwin terminal.
After skaffold has started up, we need to add a local domain name so that we can access the ingress of the cluster.
List ingresses with kubectl and grab the IP address for project-331-ingress
:
kubectl get ingress
Next, add a hosts entry for the IP address you got from the previous command:
ip-from-previous-command project-331.local
You can find the hosts file in Windows from C:\Windows\System32\drivers\etc
(edit as administrator).
For example start Powershell
in administrator mode, navigate to path above and write notepad hosts
.
After that, you should be able to access the application by going to http://project-331.local/
in your web browser. Take a look at kubernetes/ingress.yml
to see how requests are routed to different services.