温馨提示×

Python在CentOS上如何进行容器化部署

小樊
41
2026-01-02 10:03:25
栏目: 编程语言

在CentOS上进行Python应用的容器化部署,通常涉及以下几个步骤:

  1. 安装Docker: 首先,你需要在CentOS上安装Docker。可以使用以下命令来安装Docker:

    sudo yum install -y docker
    

    安装完成后,启动Docker服务并设置开机自启:

    sudo systemctl start docker
    sudo systemctl enable docker
    
  2. 创建Dockerfile: 在你的Python项目根目录下创建一个名为Dockerfile的文件,这个文件将定义如何构建你的Docker镜像。以下是一个简单的Python Flask应用的Dockerfile示例:

    # 使用官方Python运行时作为父镜像
    FROM python:3.8-slim
    
    # 设置工作目录
    WORKDIR /app
    
    # 将当前目录内容复制到位于/app中的容器中
    COPY . /app
    
    # 安装requirements.txt中指定的任何所需包
    RUN pip install --no-cache-dir -r requirements.txt
    
    # 使端口5000可用于外部访问
    EXPOSE 5000
    
    # 定义环境变量
    ENV FLASK_APP=app.py
    ENV FLASK_RUN_HOST=0.0.0.0
    
    # 在容器启动时运行app.py
    CMD ["flask", "run"]
    
  3. 构建Docker镜像: 在项目根目录下运行以下命令来构建Docker镜像:

    docker build -t your-python-app .
    

    这里的your-python-app是你为镜像指定的名称。

  4. 运行Docker容器: 构建完成后,你可以使用以下命令来运行你的Python应用:

    docker run -p 5000:5000 your-python-app
    

    这将启动一个容器,并将容器的5000端口映射到宿主机的5000端口。

  5. 验证部署: 打开浏览器并访问http://<your-centos-ip>:5000,你应该能看到你的Python应用正在运行。

  6. (可选)使用Docker Compose: 如果你的应用有多个服务(例如,Web服务和数据库),你可以使用Docker Compose来管理它们。首先安装Docker Compose:

    sudo 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
    

    然后,在项目根目录下创建一个docker-compose.yml文件,定义你的服务:

    version: '3'
    services:
      web:
        build: .
        ports:
          - "5000:5000"
      db:
        image: "postgres:latest"
        environment:
          POSTGRES_PASSWORD: example
    

    使用Docker Compose启动服务:

    docker-compose up
    

以上步骤是在CentOS上进行Python应用容器化部署的基本流程。根据你的具体需求,可能还需要进行一些额外的配置和优化。

0