centos

CentOS容器化实践指南

小樊
43
2025-07-06 19:57:35
栏目: 智能运维

在CentOS上进行容器化实践,通常涉及以下几个关键步骤:

1. 安装Docker

首先,确保你的CentOS系统已经安装了Docker。如果未安装,可以通过以下命令进行安装:

# 更新系统
sudo yum update -y

# 安装依赖包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# 添加Docker官方仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 安装Docker CE
sudo yum install -y docker-ce docker-ce-cli containerd.io

# 启动Docker服务
sudo systemctl start docker

# 设置Docker开机自启
sudo systemctl enable docker

# 验证Docker安装
sudo docker --version

2. 创建Dockerfile

在你的项目目录中创建一个名为Dockerfile的文件。这个文件将包含构建镜像所需的所有指令:

# 使用官方的CentOS基础镜像
FROM centos:7

# 设置工作目录
WORKDIR /app

# 将当前目录下的所有文件复制到容器的/app目录
COPY . /app

# 安装必要的软件包
RUN yum update -y && \
    yum install -y httpd && \
    yum clean all

# 暴露端口80
EXPOSE 80

# 启动httpd服务
CMD ["httpd", "-D", "FOREGROUND"]

3. 构建Docker镜像

在包含Dockerfile的目录中运行以下命令来构建Docker镜像:

sudo docker build -t my-centos-httpd .

4. 运行Docker容器

构建完成后,可以使用以下命令来运行一个基于该镜像的容器:

sudo docker run -d -p 8080:80 --name my-httpd-container my-centos-httpd

5. 使用Docker Compose进行容器编排(可选)

Docker Compose是一个用于定义和运行多容器Docker应用的工具。以下是使用Docker Compose在CentOS上进行容器编排的基本步骤:

curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s) -$(uname -m) -o /usr/local/bin/docker-compose"
sudo chmod +x /usr/local/bin/docker-compose
version: '3'
services:
  web:
    image: nginx
    ports:
      - "8080:80"
    volumes:
      - ./app:/usr/share/nginx/html
  db:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: example
docker-compose up -d
docker-compose down
docker-compose ps
docker-compose logs

6. 部署Kubernetes(可选)

Kubernetes是一个开源的容器编排平台,可以用于自动化容器部署、扩展和管理。以下是使用Kubernetes在CentOS上进行容器编排的基本步骤:

sudo yum install -y kubelet kubeadm kubectl
sudo systemctl enable --now kubelet
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
kubectl get nodes
kubectl get pods --all-namespaces

以上步骤涵盖了在CentOS上进行容器化部署的基本流程,包括安装Docker、编写Dockerfile、构建和运行容器,以及使用Docker Compose和Kubernetes进行容器编排和管理[4,5,6,8,9,10,11,13,15,16,17,18,19]。

0
看了该问题的人还看了