directus / v8-archive

Directus Database API — Wraps Custom SQL Databases with a REST/GraphQL API
https://docs.directus.io/api/reference.html
505 stars 204 forks source link

directus install:config not working #1758

Open JannieT opened 4 years ago

JannieT commented 4 years ago

I have trouble installing Directus on a server with nginx. Because I am not running via Apache I have to create the initial config files and this is failing.

Bug Report

Steps to Reproduce

  1. git clone git clone https://github.com/directus/directus.git
  2. php bin/directus install:config -h localhost -n database -u root -p password
  3. See error

Expected Behavior

Under previous versions (version 7?) step 2 would be successful and allow me to proceed with seeding the database

Actual Behavior

Script errors out with:

PHP Fatal error:  Uncaught Error: Call to a member function getContainer() on null in /Users/user/Sites/directus/src/helpers/app.php:113
Stack trace:
#0 /Users/user/Sites/directus/src/core/Directus/Config/SuperAdminToken.php(43): Directus\get_app_base_path()

Technical Details

uk00544 commented 4 years ago

Same issue. Using v8.6.2 with docker - php 7.3 + ngnix. Building app directly from https://github.com/directus/directus

#1 /usr/share/nginx/html/src/core/Directus/Console/Modules/InstallModule.php(147): Directus\Config\SuperAdminToken::path()

haggen commented 4 years ago

Just had this issue with brand new installation using Docker.

Error log:

$ docker-compose exec web php bin/directus install:config -h localhost -n default -u root -p 123 -e ... -k default

Fatal error: Uncaught Error: Call to a member function getContainer() on null in /var/directus/src/helpers/app.php:113
Stack trace:
#0 /var/directus/src/core/Directus/Config/SuperAdminToken.php(43): Directus\get_app_base_path()
#1 /var/directus/src/core/Directus/Console/Modules/InstallModule.php(147): Directus\Config\SuperAdminToken::path()
#2 /var/directus/src/core/Directus/Console/Modules/ModuleBase.php(61): Directus\Console\Modules\InstallModule->cmdConfig(Array, Array)
#3 /var/directus/src/core/Directus/Console/Cli.php(88): Directus\Console\Modules\ModuleBase->runCommand('config', Array, Array)
#4 /var/directus/src/core/Directus/Console/Cli.php(64): Directus\Console\Cli->cmd()
#5 /var/directus/bin/directus(10): Directus\Console\Cli->run()
#6 {main}
  thrown in /var/directus/src/helpers/app.php on line 113

My docker-compose.yml:

version: "3"

services:
  redis:
    image: redis:5.0-alpine
  db:
    image: mariadb:10.4
    environment:
      - MYSQL_ROOT_PASSWORD=123
  web:
    image: directus/directus:v8-apache
    environment:
      - DIRECTUS_USE_ENV=0
      - DATABASE_URL=mysql://root:123@db:3306/default
      - REDIS_URL=redis://redis:6379/0
    networks:
      - default
      - traefik
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.directus.rule=Host(`directus.localhost`)"

networks:
  traefik:
    external: true