curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo npm -g install yarn
yarn global add code-server
~/.yarn/bin/code-server
|
|
vim ~/.config/code-server/config.yaml
|
|
bind-addr: 127.0.0.1:8080
auth: none
password: academia
cert: false
|
bind-addr: 127.0.0.1:8080
auth: password
password: academia
cert: false
|
Service
sudo vim /etc/systemd/system/code-server.service
[Unit]
Description=code-server
After=network.target
[Service]
User=ubuntu
Group=ubuntu
WorkingDirectory=/home/ubuntu
Environment="PATH=/usr/bin"
ExecStart=/home/ubuntu/.yarn/bin/code-server
[Install]
WantedBy=multi-user.target
sudo systemctl disable code-server.service
sudo systemctl enable code-server.service
sudo systemctl status code-server.service
sudo systemctl start code-server.service
sudo systemctl stop code-server.service
blink » config » Hosts » New Host » SSH Config » New Host » Save
# Compression no
LocalForward 8080 127.0.0.1:8080
ExitOnForwardFailure yes
|
Extension
~/.yarn/bin/code-server\
--install-extension ms-kubernetes-tools.vscode-kubernetes-tools --force\
--install-extension msjsdiag.vscode-react-native --force\
--install-extension ms-azuretools.vscode-docker --force\
--install-extension PKief.material-icon-theme --force\
--install-extension ckolkman.vscode-postgres --force\
--install-extension esbenp.prettier-vscode --force\
--install-extension ritwickdey.LiveServer --force\
--install-extension ms-python.python --force
~/.yarn/bin/code-server\
--install-extension ms-vscode-remote.vscode-remote-extensionpack --force\
--install-extension ms-vscode.Theme-MarkdownKit --force\
--install-extension ms-dotnettools.csharp --force\
--install-extension ms-vscode.cpptools --force\
--install-extension xdebug.php-pack --force
|
~/.yarn/bin/code-server\
--install-extension k--kato.intellij-idea-keybindings --force\
--install-extension felixfbecker.php-intellisense --force\
--install-extension Pivotal.vscode-boot-dev-pack --force\
--install-extension vscjava.vscode-java-pack --force\
--install-extension ms-vscode.powershell --force\
--install-extension Dart-Code.dart-code --force\
--install-extension mrmlnc.vscode-scss --force\
--install-extension ms-python.python --force\
--install-extension xdebug.php-pack --force\
--install-extension rebornix.Ruby --force\
--install-extension redhat.java --force\
--install-extension golang.Go --force
|
|
scp ~/Downloads/*.vsix [email protected]:~/.chorke/academia/var/download
:'
[email protected] 100% 132MB 2.4MB/s 00:54
ms-vscode-remote.vscode-remote-extensionpack-0.21.0.vsix 100% 58KB 3.8MB/s 00:00
ms-vscode-remote.remote-ssh-0.79.2022040616.vsix 100% 319KB 3.6MB/s 00:00
[email protected] 100% 61MB 4.2MB/s 00:14
ms-vscode.Theme-MarkdownKit-0.1.4.vsix 100% 64KB 4.1MB/s 00:00
swellaby.rust-pack-0.2.29.vsix 100% 9251 152.1KB/s 00:00
xdebug.php-pack-1.0.3.vsix 100% 37KB 1.9MB/s 00:00
'
⇧ + ⌘ + P » vsix » Enter
|
Mobile Shell
sudo apt update
sudo apt list --upgradable
|
sudo apt upgrade
sudo apt install mosh
|
Virtual Keyboard
iPad Pro » Settings » General » Keyboard » Auto-Correction » Disable
iPad Pro » Settings » General » Keyboard » Shortcuts » Disable
Java GraalVM
export ACADEMIA_HOME="$HOME/.chorke/academia"
sudo mkdir -p /opt/cli
|
|
mkdir -p $ACADEMIA_HOME/etc/env/
cat << \EOF >> $ACADEMIA_HOME/etc/env/system.sh
# chorke academia env
export ACADEMIA_HOME="$HOME/.chorke/academia"
export ACADEMIA_DEV="$ACADEMIA_HOME/dev"
EOF
|
cat << \EOF >> $HOME/.bashrc
# chorke academia env
if [ -f "$HOME/.chorke/academia/etc/env/system.sh" ]; then
source $HOME/.chorke/academia/etc/env/system.sh
fi
EOF
|
|
sudo wget -c https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.0.0.2/\
graalvm-ce-java17-linux-aarch64-22.0.0.2.tar.gz -P /opt/cli/
sudo tar -xvzf /opt/cli/graalvm-ce-java17-linux-aarch64-22.0.0.2.tar.gz -C /opt/cli/
sudo rm -rf /opt/cli/graalvm-ce-java17-linux-aarch64-22.0.0.2.tar.gz
export GRAALVM_HOME='/opt/cli/graalvm-ce-java17-22.0.0.2'
cat << \EOF >> $ACADEMIA_HOME/etc/env/system.sh
# chorke academia sys
export GRAALVM_HOME='/opt/cli/graalvm-ce-java17-22.0.0.2'
EOF
|
|
update-alternatives --query native-image
update-alternatives --query jconsole
update-alternatives --query jshell
update-alternatives --query javac
update-alternatives --query java
update-alternatives --query jdb
update-alternatives --query jps
update-alternatives --query gu
update-alternatives --query js
sudo update-alternatives --install /usr/bin/jconsole jconsole\
$GRAALVM_HOME/bin/jconsole 1983
sudo update-alternatives --install /usr/bin/jshell jshell\
$GRAALVM_HOME/bin/jshell 1983
sudo update-alternatives --install /usr/bin/javac javac\
$GRAALVM_HOME/bin/javac 1983
sudo update-alternatives --install /usr/bin/java java\
$GRAALVM_HOME/bin/java 1983
|
sudo update-alternatives --install /usr/bin/jdb jdb\
$GRAALVM_HOME/bin/jdb 1983
sudo update-alternatives --install /usr/bin/jps jps\
$GRAALVM_HOME/bin/jps 1983
sudo update-alternatives --install /usr/bin/js js\
$GRAALVM_HOME/bin/js 1983
sudo update-alternatives --install /usr/local/bin/gu gu\
$GRAALVM_HOME/bin/gu 1983
sudo gu install native-image
sudo update-alternatives --install\
/usr/bin/native-image native-image\
$GRAALVM_HOME/bin/native-image 1983
native-image --version
sudo gu --version
javac -version
java -version
|
Ant & Maven
sudo wget -c https://archive.apache.org/dist/ant/binaries/\
apache-ant-1.10.12-bin.tar.gz -P /opt/cli/
sudo tar -xvzf /opt/cli/apache-ant-1.10.12-bin.tar.gz -C /opt/cli/
sudo rm -rf /opt/cli/apache-ant-1.10.12-bin.tar.gz
export ANT_HOME=/opt/cli/apache-ant-1.10.12
sudo update-alternatives --install /usr/bin/ant ant\
$ANT_HOME/bin/ant 1983
|
sudo wget -c https://archive.apache.org/dist/maven/maven-3/3.8.5/\
binaries/apache-maven-3.8.5-bin.tar.gz -P /opt/cli/
sudo tar -xvzf /opt/cli/apache-maven-3.8.5-bin.tar.gz -C /opt/cli/
sudo rm -rf /opt/cli/apache-maven-3.8.5-bin.tar.gz
export MAVEN_HOME=/opt/cli/apache-maven-3.8.5
sudo update-alternatives --install /usr/bin/mvn mvn\
$MAVEN_HOME/bin/mvn 1983
|
Workspace
sudo mkdir -p /opt/dev/academia
sudo chown $(id -u):$(id -g) /opt/dev/academia -R
|
sudo mkdir -p /opt/dev/software
sudo chown $(id -u):$(id -g) /opt/dev/software -R
|
Kubernetes
sudo apt remove docker docker-engine docker.io containerd runc
sudo apt install ca-certificates curl gnupg lsb-release
sudo su
cat << \EOF >> /etc/docker/daemon.json
{
"exec-opts": [
"native.cgroupdriver=systemd"
],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
EOF
exit
sudo vim /boot/firmware/cmdline.txt
net.ifnames=0 dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=LABEL=writable rootfstype=ext4 elevator=deadline rootwait fixrtc cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1 swapaccount=1
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=arm64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat << EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt update && sudo apt install -y apt-transport-https curl
sudo apt install -y docker-ce=5:20.10.14~3-0~ubuntu-focal\
kubelet=1.23.5-00 kubeadm=1.23.5-00 kubectl=1.23.5-00
sudo apt-mark hold docker-ce kubelet kubeadm kubectl
echo "net.bridge.bridge-nf-call-iptables=1" |\
sudo tee -a /etc/sysctl.conf
sudo sysctl -p
sudo kubeadm init --pod-network-cidr=10.21.0.0/16
docker config
sudo usermod -aG docker $USER
newgrp docker
mkdir -p $HOME/.docker
sudo chown $(id -u):$(id -g) $HOME/.docker -R
sudo chmod g+rwx $HOME/.docker -R
kube config
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
network overlay
kubectl apply -f\
https://docs.projectcalico.org/v3.14/manifests/calico.yaml
join worker nodes
kubeadm token create --print-join-command
kubectl get nodes
Helm Chart
sudo wget -c https://get.helm.sh/helm-v3.8.1-linux-arm64.tar.gz -P /opt/cli/
sudo tar -xvzf /opt/cli/helm-v3.8.1-linux-arm64.tar.gz -C /opt/cli/
sudo rm -rf /opt/cli/helm-v3.8.1-linux-arm64.tar.gz
sudo mv /opt/cli/linux-arm64 /opt/cli/helm-v3.8.1-linux-arm64
sudo update-alternatives --install /usr/local/bin/helm helm\
/opt/cli/helm-v3.8.1-linux-arm64/helm 1983
sudo update-alternatives --install /usr/bin/helm helm\
/opt/cli/helm-v3.8.1-linux-arm64/helm 1983
helm repo add stable https://charts.helm.sh/stable
helm search repo jenkins
helm version
Knowledge
dpkg --print-architecture
apt-cache madison kubelet
apt-cache madison kubeadm
apt-cache madison kubectl
apt-cache madison docker-ce
sudo update-alternatives --list java
sudo update-alternatives --query java
sudo update-alternatives --remove-all java
sudo update-alternatives --remove java /usr/bin/java
sudo systemctl daemon-reload
sudo apt purge docker-ce kubelet kubeadm kubectl
sudo apt-mark unhold docker-ce kubelet kubeadm kubectl
sudo npm install -g --unsafe-perm=true --allow-root
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
curl -fsSL https://rpm.nodesource.com/setup_14.x | sudo bash -
add the new key(s) to known_hosts
ssh-keyscan -H dev.chorke.org >> ~/.ssh/known_hosts
remove the old key(s) from known_hosts
ssh-keygen -R dev.chorke.org
References