Skip to content

Instantly share code, notes, and snippets.

View hsm207's full-sized avatar

Shukri hsm207

View GitHub Profile
@hsm207
hsm207 / create_build_env.sh
Created March 8, 2020 13:20
Script to create a docker container to build Spark
docker run -it \
-v $(pwd):/spark \
-v /c/path/to/.m2:/root/.m2 \
-v /c/path/to/.sbt:/root/.sbt \
-v /c/path/to/.ivy2:/root/.ivy2 \
-w /spark \
--network host \
openjdk:8 bash
@hsm207
hsm207 / find_host_ip.sh
Created March 8, 2020 14:04
Command to find the host's ip address from inside a container
# Thanks to: https://forums.docker.com/t/accessing-host-machine-from-within-docker-container/14248/10
docker run --network host \
--rm \
openjdk:8 bash -c "apt update; apt install net-tools; route | awk '/^default/ { print \$2 }' | grep -v 0.0.0.0"
@hsm207
hsm207 / install_eksctl.sh
Last active April 28, 2020 16:48
Install eksctl
#!/bin/bash
# from: https://docs.aws.amazon.com/eks/latest/userguide/getting-started-eksctl.html
# download and extract the latest version of eksctl (including prerelease)
# from: https://gist.github.com/steinwaywhw/a4cd19cda655b8249d908261a62687f8
LATEST_EKSCTL=`curl -s https://api.github.com/repos/weaveworks/eksctl/releases |
jq ".[0].assets | map(select(.name == \"eksctl_Linux_amd64.tar.gz\")) | .[0].browser_download_url" |
tr -d '"'`
@hsm207
hsm207 / install_kubectl.sh
Last active April 28, 2020 16:54
Install the latest version of kubectl
#!/bin/bash
# from: https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html
BUCKET=amazon-eks
LATEST_KUBECTL_VERSION=`aws s3 ls s3://$BUCKET/ |
grep --invert-match "cloudformation\|manifests" |
awk '{print $2}' |
cut -d/ -f 1 |
@hsm207
hsm207 / auto_ssh_keys.sh
Created April 11, 2020 20:20
Create ssh keys without user input
#!/bin/bash
# from https://unix.stackexchange.com/questions/69314/automated-ssh-keygen-without-passphrase-how
cat /dev/zero |
ssh-keygen -q -N ""
@hsm207
hsm207 / minimal_cluster.yaml
Last active April 28, 2020 16:58
Minimal EKS cluster config
apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
metadata:
name: dev
region: ap-southeast-1
nodeGroups:
- name: ng-1
availabilityZones: ["ap-southeast-1a"]
@hsm207
hsm207 / install_kubeflow.sh
Last active April 28, 2020 20:37
Script to install kubeflow on EKS
#!/bin/bash
# based on https://www.kubeflow.org/docs/aws/deploy/install-kubeflow/
# install the the latest kfctl
LATEST_KFCTL=`curl -s https://api.github.com/repos/kubeflow/kfctl/releases |
jq ".[0].assets | map(select(.name | contains(\"linux\"))) | .[0].browser_download_url" |
tr -d '"'`
echo "Downloading kfctl from" $LATEST_KFCTL
@hsm207
hsm207 / install_aws_iam_authenticator.sh
Created April 14, 2020 19:39
Install the aws iam authenticator
#!/bin/bash
# from https://docs.aws.amazon.com/eks/latest/userguide/install-aws-iam-authenticator.html
BUCKET=amazon-eks
VERSION=`aws s3 ls s3://$BUCKET/ |
grep --invert-match "cloudformation\|manifests" |
awk '{print $2}' |
cut -d/ -f 1 |
@hsm207
hsm207 / environment_setup.sh
Created April 28, 2020 16:33
Setting up the environment before creating an EKS cluster
#!/bin/bash
export AWS_DEFAULT_REGION=ap-southeast-1
export EDITOR="code-insiders --wait"
source activate python3
pip install --upgrade awscli
@hsm207
hsm207 / deploy_jupyter_fast.sh
Created April 28, 2020 17:28
Launch jupyter notebook in k8s
kubectl create deployment --image=jupyter/tensorflow-notebook:latest jupyter