本篇介绍使用Fastapi + sqlalchemy + alembic 来完成后端服务的数据库管理,并且通过docker-compose来部署后端服务和数据库Mysql。包括: 1. 数据库创建,数据库用户创建 2. 数据库服务发现 3. Fastapi 连接数据库 4. Alembic 连接数
第一步是项目结构的设置,项目根目录下包含了app文件夹、docker-compose.yml和.env文件,这些文件分别用...
在浏览器中访问http://localhost:8000/docs,你应该能够看到 FastAPI 的自动生成 API 文档。 5. 常用 Docker Compose 命令 启动服务:docker-compose up或者docker-compose up -d(后台运行)。 停止服务:docker-compose down。 重建服务:docker-compose up --build。 查看日志:docker-compose logs或者docker-compose l...
1.有Dockerfile文件进行部署,Dockerfile内容参考 FROM127.0.0.1:5000/py3.10-1COPYrequirements.txt .RUNpip install -i pip源 -r requirements.txt 2.Docker-compose.yml文件 env_file指定环境变量,看项目是否使用env环境变量 volumes挂在工作目录映射,工作目录更改代码容器代码也一起更改,单Dockerfile部署时,代码修改...
这个安装uv的命令是从 uv 官方文档中FastAPI的 Docker 构建那里学到的。 复制依赖文件: 只复制pyproject.toml和uv.lock,而不是整个项目代码。 这是利用 Docker 的缓存机制,只有依赖文件变化时才会重新执行后续安装步骤。 安装依赖: uv sync根据pyproject.toml和uv.lock创建虚拟环境(默认在.venv目录)并安装依赖。
1. 安装 Docker 2. 创建 FastAPI 项目 3. 创建 `requirements.txt` 4. 编写 Dockerfile 解释: 5. 构建 Docker 镜像 6. 运行 Docker 容器 7. 访问应用 8. 管理 Docker 容器 9. 使用 Docker Compose(可选) 10. 打包和发布镜像(可选) 总结
创建一个 docker-compose.yml 文件,如下所示: version: '3' services: web: build: . command: ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "80"] volumes: - .:/app ports: - 8000:80 depends_on: - redis worker: ...
使用docker-compose部署一套nginx + php + mysql + redis环境,其中php在部署时需要添加mysql和redis的...
容器编排: 是指在集群上调度容器生命周期的工具。负责所有容器的网络、存储、配置、通信、资源分配、节点分配、安全机制等的总编排。kubernetes(k8s) 是最就行的容器编排工具。docker-compose是docker自身配套的简易编排工具,适用于小型项目和测试环境。 服务编排设计 ...
docker-compose.yaml version: '3.9' services: web: env_file: .env build: . command: sh -c "alembic upgrade head && uvicorn main:app --host 0.0.0.0 --port 8000" volumes: - .:/app ports: - 8000:8000 depends_on: - db - redis ...