请去docker官网查看安装说明,该博客只是留作个人笔记用途
debian 安装docker apt安装
sudo apt-get -y update
sudo apt-get -y install ca-certificates curl gnupg lsb-release
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get -y update
sudo apt-get -y install docker-ce docker-ce-cli containerd.io
#安装特定版本
#apt-cache madison docker-ce
#sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
或者用脚本安装
curl -fsSL https://get.docker.com -o get-docker.sh
# Dry run可以显示具体要做的事情,然后自己复制粘贴
#DRY_RUN=1 sh ./get-docker.sh
sh ./get-docker.sh
卸载 docker
apt-get -y autoremove docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
安装docker compose 使用仓库
sudo apt-get update
sudo apt-get install docker-compose-plugin
安装kind (kubernetes in docker) 安装k8s 伪集群
请参考: https://www.qikqiak.com/post/deploy-k8s-on-win-use-wsl2/
# 下载 KinD 二进制文件
curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.11.1/kind-linux-amd64
# 标记为可执行文件
chmod +x ./kind
# 移动到 PATH 目录下去
mv ./kind /usr/local/bin/
# 安装kubectl
curl -o kubectl https://amazon-eks.s3.us-west-2.amazonaws.com/1.18.9/2020-11-02/bin/linux/amd64/kubectl
chmod +x ./kubectl
mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$PATH:$HOME/bin
echo 'export PATH=$PATH:$HOME/bin' >> ~/.bashrc
kubectl version --short --client
# 检查是否设置了 KUBECONFIG 环境变量
echo $KUBECONFIG
# 检查是否存在 .kube 目录,不需要手动创建
ls $HOME/.kube
# 使用 kind 命令创建一个名为 kindk8s 的集群
kind create cluster --name kindk8s
# 创建后检查 .kube 目录
ls $HOME/.kube
# 创建一个3节点集群的配置文件 **注意以下配置只是看看而已,请参考下方带ingress 转发(映射到宿主机的80,443)的配置**
cat << EOF > kind-3nodes.yaml
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
#注意,该配置只是看看和参考,不带端口映射和ingress
nodes:
- role: control-plane
- role: worker
- role: worker
EOF
# 使用配置文件创建新的集群
kind create cluster --name wslkindmultinodes --config ./kind-3nodes.yaml
# 获取集群节点
kubectl get nodes
# 删除现在的集群
kind delete cluster --name wslkindmultinodes
kind安装k8s( 带ingress 转发(映射到宿主机的80,443))
#第一步,建立集群
#注意该配置拿来生产都没问题,
cat <<EOF | kind create cluster --config=-
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
networking:
podSubnet: "192.168.0.0/16"
serviceSubnet: "10.100.0.0/12"
nodes:
- role: control-plane
kubeadmConfigPatches:
- |
kind: InitConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "ingress-ready=true"
extraPortMappings:
- containerPort: 80
hostPort: 80
protocol: TCP
- containerPort: 443
hostPort: 443
protocol: TCP
- containerPort: 31599
hostPort: 31599
protocol: TCP
- containerPort: 31699
hostPort: 31699
protocol: TCP
EOF
#第二步 添加 ingress-nginx 控制器
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/main/deploy/static/provider/kind/deploy.yaml
#第三步,添加服务和ingress,验证ingress是否工作正常
kubectl apply -f https://kind.sigs.k8s.io/examples/ingress/usage.yaml
#打开 http://宿主机IP/foo
#打开 http://宿主机IP/bar