Category: Web

stuff about web design, development, trends, and tricks

  • Kubernetes Cheat-sheet

    Kubernetes Cheat-sheet

    kubectl get pods -n namespace ### get the id of the pod just made for given namespace

    kubectl logs namespace-tag-6b59cf4fbc-k5wdc -n namespace ### show the logs of what’s happening to it

    kubectl get ingress -A ### get a list of ingress points for all namespace

    kubectl get svc -A ### get a list of all services running for all namespaces

    kubectl exec -it container-tag-6b59cf4fbc-k5wdc -n namespace sh ### open container and run shell on it

    helm template -f values.yaml . > deployChart.yaml ### run the chart against template but just output to file

    helm install -name appName . -n namespace --create-namespace ### make stuff from current folder from Chart.yaml

    helm install -name appName. -n namespace --debug --dry-run ### try out creation but don’t actually make

    helm uninstall appName-n namespace ### delete stuff via helm

    kubectl get pods --field-selector=status.phase!=Running -A ### get all the pods that are not running

    kubectl get deployments -A ### get all the deployments

    kubectl edit deployment spark-query -n namespace ### edit the one deployment ‘spark-query’

    kubectl scale deployment portal -n namespace --replicas=1 ### add one pod to ‘portal’ service

    kubectl get deploy -n namespace -o yaml ### output the deployment to new yaml file

    kubectl edit deploy appName -n namespace ### edit the deployment in vi

    kubectl edit cm appName -n namespace

    kubectl describe pod container-tag-6b59cf4fbc-k5wdc -n namespace ### get details on pod

    kubectl get secret -n namespace

    kubectl edit secret default-token-qcnfb -n namespace

    kubectl create secret generic azure-app-secret --from-literal=azurestorageaccountname=storageName --from-literal=azurestorageaccountkey=[key]  -n namespace

    kubectl delete pod --all -n namespace ### delete all the pods in namespace

  • Docker Cheat-sheet

    Docker Cheat-sheet

    Some semi-random commands for Docker.

    Image commands:

    docker --help #to list all commands
    sudo docker images -a -q #return just the ID of all images
    sudo docker rmi <image name> #to remove a specific image

    Working with containers:

    sudo docker ps -a -q #return just the ID of all containers
    sudo docker rm <container name or ID> #to remove specific container

    The one’s that I needed while working with Azure:

    docker login m1dev.azurecr.io --username 00000000-0000-0000-0000-000000000000 --password $TOKEN
    az acr login --name m1devcr

    *** if this fails, try to clear account on server

    Az account clear

    –goto directy with docker file and run?

    sudo docker build -t <acr service name>/<acr repo>/<image name>:<image tag> <Path to dockerfile>
    #i.e. - sudo docker build -t m1dev.azurecr.io/path/portal:version.R21.0.10 portal

    –tag is version number, might be in helm chart

    docker push <acr service name>/<acr repo>/<image name>:<image tag>

    Found this fix for build failure with copying too many files in a row – https://stackoverflow.com/questions/51115856/docker-failed-to-export-image-failed-to-create-image-failed-to-get-layer

    DOCKER_BUILDKIT=1 docker build --tag app:test 

    –used build.sh provided and then these:

    docker tag /data/portal:latest m1dev.azurecr.io/path/portal:version.R21.0.10
    docker push m1dev.azurecr.io/path/portal:version.R21.0.10

    https://docs.docker.com/engine/reference/commandline

    docker system prune  --all

    Pull from another repo-

    #put your password in a file and then run the login command, reading the file

    nano ~/my_password.txt
    cat ~/my_password.txt | sudo docker login -u TIdev1 --password-stdin TIdev1.azurecr.io

    #the list of images to pull from another repo-

    sudo docker pull TIdev1.azurecr.io/path/analytics/api -a
    sudo docker pull TIdev1.azurecr.io/path/analytics/bootstrap -a
    sudo docker pull TIdev1.azurecr.io/path/analytics/web -a
    sudo docker pull TIdev1.azurecr.io/path/data/mysql-client -a
  • Linux Cheat-sheet

    Linux Cheat-sheet

    As I get into Linux a little more and learn some handy commands, I’m going to document them here.

    ssh user@server -m [algorithm] Sometimes when reaching from Windows into Linux you need to force agreement on the security algorithm both sides are using

    ssh -Q mac to query what security algorithm are available

    nano –linenumbers [file name] text editor

    df -h to get list of folders and space in Linux

    fdisk -l to get disk info

    du -ah to get disk usage for all files and directory

    du -sh for current directory

    chmod 755 [file_name] grant most everything rights

    Ln -s [file or dir name] make symbolic link

    unlink [file or dir name] remove symbolic link

    rm -d to remove directory

    rm -dr to remove not empty directory

    history | grep [search term] -A 10 -B 10 ### search history and show the 10 lines before and after

    ls -a or -ll to list all files and folders with more details, or hidden ones

    ip -c a to get a list of network interfaces in color!

    sudo ip addr add [server IP]/24 dev [interface name] set the interface to use given IP, needs the following to turn on

    ip link set dev [interface name] up or down, to turn on or off a network interface

    ip route add default via [gateway IP] dev [interface name] sets default route to gateway

    sudo nano /etc/systemd/resolved.conf, scroll down and un-comment or amend “DNS=” line to add the DNS servers you need. Will have to restart service with sudo systemctl restart systemd-resolved

    sudo nano .bashrc (from home directory), scroll down to line 46 or so and un-comment the force_color_prompt line to get colored terminal output. You will have to logout/login to get the change.