面试题答案
一键面试- 代码编写
- 使用Python编写Flask应用代码。例如,创建一个简单的
app.py
文件:
from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello, World!' if __name__ == '__main__': app.run(host='0.0.0.0', port=5000)
- 使用Python编写Flask应用代码。例如,创建一个简单的
- 安装依赖
- 创建
requirements.txt
文件来记录项目依赖。对于Flask应用,运行pip freeze > requirements.txt
,文件内容可能类似:
Flask==2.2.2
- 创建
- 主要工具 - Docker
- 创建Dockerfile:
- 在项目根目录创建
Dockerfile
,内容如下:
# 使用Python官方基础镜像 FROM python:3.10 # 设置工作目录 WORKDIR /app # 复制依赖文件并安装依赖 COPY requirements.txt. RUN pip install -r requirements.txt # 复制项目代码到工作目录 COPY. /app # 暴露应用运行端口 EXPOSE 5000 # 定义容器启动时运行的命令 CMD ["python", "app.py"]
- 在项目根目录创建
- 创建Dockerfile:
- 构建镜像
- 在包含
Dockerfile
的目录下,使用Docker命令构建镜像。例如,运行docker build -t my_flask_app:1.0.0.
。其中,-t
参数用于指定镜像的标签,格式为镜像名:版本号
,最后的.
表示当前目录作为构建上下文。
- 在包含
- 自动化流程工具 - Jenkins(以其为例)
- 安装和配置Jenkins:
- 安装Jenkins服务,可以通过官方文档在服务器上进行安装。
- 配置Jenkins与代码仓库(如Git)连接,添加Git凭据以便能拉取代码。
- 创建Jenkins Pipeline:
- 在Jenkins中创建一个新的Pipeline任务。
- 编写Pipeline脚本(以Declarative Pipeline为例):
pipeline { agent any stages { stage('拉取代码') { steps { git url: '你的Git仓库地址', credentialsId: '你的凭据ID' } } stage('构建镜像') { steps { sh 'docker build -t my_flask_app:${env.BUILD_NUMBER}. ' } } } }
- 这里
${env.BUILD_NUMBER}
是Jenkins自动生成的构建编号,每次构建镜像版本号都会更新。这样就实现了从代码更新到容器镜像自动化生成的流程。
- 安装和配置Jenkins: