插件窝 干货文章 配置Linux系统以支持容器云开发

配置Linux系统以支持容器云开发

Docker sudo 安装 install 974    来源:    2025-04-16

Linux系统配置以支持容器云开发

1. 系统准备

1.1 选择Linux发行版

推荐使用以下发行版之一: - Ubuntu 20.04/22.04 LTS - CentOS/RHEL 8/9 - Debian 11/12 - Fedora 36+

1.2 系统要求

  • 最小4GB RAM (建议8GB+)
  • 2核CPU (建议4核+)
  • 20GB可用磁盘空间 (建议50GB+)

2. 安装容器运行时

2.1 安装Docker

# Ubuntu/Debian
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/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/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

# CentOS/RHEL
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io

2.2 配置Docker

# 启动并设置开机自启
sudo systemctl enable --now docker

# 将当前用户加入docker组
sudo usermod -aG docker $USER
newgrp docker

# 配置镜像加速器 (中国用户推荐)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://registry.docker-cn.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF
sudo systemctl restart docker

2.3 安装Podman (可选)

# Ubuntu/Debian
sudo apt-get install -y podman

# CentOS/RHEL
sudo yum install -y podman

3. 安装Kubernetes工具

3.1 安装kubectl

curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl

3.2 安装minikube (本地开发用)

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube

# 启动minikube
minikube start --driver=docker

3.3 安装kind (Kubernetes in Docker)

curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.17.0/kind-linux-amd64
chmod +x ./kind
sudo mv ./kind /usr/local/bin/kind

4. 安装容器编排工具

4.1 安装Docker Compose

sudo curl -L "https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

4.2 安装Helm (Kubernetes包管理器)

curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash

5. 开发工具安装

5.1 安装VS Code

# Ubuntu/Debian
sudo apt-get install wget gpg
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -o root -g root -m 644 packages.microsoft.gpg /usr/share/keyrings/
sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
sudo apt-get update
sudo apt-get install code

# CentOS/RHEL
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'
sudo yum install code

5.2 安装VS Code扩展

code --install-extension ms-azuretools.vscode-docker
code --install-extension ms-kubernetes-tools.vscode-kubernetes-tools
code --install-extension redhat.vscode-yaml

6. 网络配置

6.1 启用IP转发

sudo sysctl -w net.ipv4.ip_forward=1
echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf

6.2 防火墙配置 (可选)

# Ubuntu/Debian (UFW)
sudo ufw allow 22
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable

# CentOS/RHEL (firewalld)
sudo firewall-cmd --permanent --add-port=22/tcp
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --reload

7. 验证安装

# 验证Docker
docker --version
docker run hello-world

# 验证Kubernetes工具
kubectl version --client
minikube version
kind --version

# 验证其他工具
docker-compose --version
helm version

8. 可选优化

8.1 配置Shell自动补全

# Bash
echo 'source <(kubectl completion bash)' >> ~/.bashrc
echo 'source <(helm completion bash)' >> ~/.bashrc
echo 'source <(minikube completion bash)' >> ~/.bashrc

# Zsh
echo 'source <(kubectl completion zsh)' >> ~/.zshrc
echo 'source <(helm completion zsh)' >> ~/.zshrc
echo 'source <(minikube completion zsh)' >> ~/.zshrc

8.2 配置别名

echo "alias k=kubectl" >> ~/.bashrc
echo "alias d=docker" >> ~/.bashrc
echo "complete -F __start_kubectl k" >> ~/.bashrc
source ~/.bashrc

8.3 安装监控工具

# 安装cAdvisor
docker run \
  --volume=/:/rootfs:ro \
  --volume=/var/run:/var/run:ro \
  --volume=/sys:/sys:ro \
  --volume=/var/lib/docker/:/var/lib/docker:ro \
  --volume=/dev/disk/:/dev/disk:ro \
  --publish=8080:8080 \
  --detach=true \
  --name=cadvisor \
  --privileged \
  --device=/dev/kmsg \
  gcr.io/cadvisor/cadvisor:v0.47.0

完成以上配置后,您的Linux系统已准备好进行容器云开发。您可以使用Docker构建和运行容器,使用Kubernetes编排容器,以及使用各种工具进行云原生应用开发。