如何使用 docker-compose 删除 `django_admin_log`?

How to drop `django_admin_log` with docker-compose?

我正在为我的 Django 应用程序使用 docker-compose.yml 文件,并且 我正在尝试做 docker-compose run web python manage.py dbshell 并删除 table django_admin_log 就像 here.

但是这个返回了
CommandError: You appear not to have the 'psql' program installed or on your path.

我该如何做 python manage.py dbshell 或删除 table django_admin_log

这是我的 docker-compose.yml

storage:
  image: busybox
  volumes:
    - /var/lib/postgresql/data
    - /data
  command: true

db:
  image: postgres
  environment:
     - POSTGRESQL_DB=postgres
     - POSTGRESQL_USER=postgres
     - POSTGRESQL_PASSWORD=password
  volumes_from:
    - storage

web:
  build: .
  environment:
    - DATABASE_HOST=postgres
  command: ./run_web.sh
  ports:
    - "80:80"
  links:
    - db

谢谢

假设您使用的是 Debian 或基于 Ubuntu 的映像,在您的 Dockerfile 中,您只需添加以下行:

RUN apt-get update && apt-get -y install postgresql

这将为您安装 psql 命令并允许您使用 dbshel​​l。