docker-compose django pypy postgres
时间: 2023-07-21 16:05:51 浏览: 176
docker-compose
要使用 Docker Compose 部署 Django、PyPy 和 PostgreSQL,你需要编写一个 `docker-compose.yml` 文件。以下是一个可能的示例:
```yaml
version: '3'
services:
web:
build:
context: .
dockerfile: Dockerfile.pypy
command: pypy manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
environment:
- SECRET_KEY=your-secret-key
- DEBUG=1
- DB_NAME=postgres
- DB_USER=postgres
- DB_PASSWORD=postgres
- DB_HOST=db
- DB_PORT=5432
depends_on:
- db
db:
image: postgres
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
```
在上述示例中,我们定义了两个服务:`web` 和 `db`。`web` 服务使用 `Dockerfile.pypy` 文件构建,并运行 PyPy 版本的 Django 开发服务器,监听端口 `8000`。`web` 服务还挂载当前目录下的 `.` 到容器内部的 `/code` 目录,以便于开发。`web` 服务使用了一些环境变量,如 `SECRET_KEY` 和数据库连接信息,这些变量可以在容器内部使用。`web` 服务依赖于 `db` 服务,因为它需要连接到 PostgreSQL 数据库。
`db` 服务使用了 PostgreSQL 官方镜像,并设置了一些环境变量,如数据库名称、用户名和密码。这些变量将在容器内部使用。
要使用上述 `docker-compose.yml` 文件,你需要将其放置在 Django 项目的根目录下,然后运行以下命令:
```bash
$ docker-compose up --build
```
此命令会构建 Docker 镜像并启动容器。当容器启动后,你可以在浏览器中访问 `http://localhost:8000` 来查看运行中的 Django 应用程序。
阅读全文