Self Host Docker Setup - How to set up the first login?

Hi I have installed the Frappe Drive using the docker compose installation, but I can’t log in the frontend.

compose file:

version: "3.7"
services:

  frappe-drive:
    image: frappe/bench:latest
    command: bash /workspace/init.sh
    networks:
      - network_public
    environment:
      - SHELL=/bin/bash
    working_dir: /home/frappe
    volumes:
      - .:/workspace
      - frappe_drive_data://home/frappe
    ports:
      - 8001:8000
      - 9001:9000
    deploy:
      # Modo de Deploy
      mode: replicated
      # Número de Réplicas
      replicas: 1
      # Define onde o deploy deve ser postado
      placement:
        constraints:
          - node.role == manager
      # Define os recursos do serviço
      resources:
        # Configura os limites de recursos do Serviço
        limits:
          # Configura o limite de CPU do Serviço
          cpus: "1"
          # Configura o limite de memória do Serviço
          memory: 4098M

volumes:
  frappe_drive_data:
    external: true
    name: frappe_drive_data

networks:
  network_public:
    external: true
    name: network_public

init.sh file (I changed drive.localhost to just localhost, either way It runs ok apparently):

#!bin/bash

if [ -d "/home/frappe/frappe-bench/apps/frappe" ]; then
    echo "Bench already exists, skipping init"
    cd frappe-bench
    bench start
else
    echo "Creating new bench..."
fi

bench init --skip-redis-config-generation frappe-bench --version version-15

cd frappe-bench

# Use containers instead of localhost
bench set-mariadb-host mariadb
bench set-redis-cache-host redis:6379
bench set-redis-queue-host redis:6379
bench set-redis-socketio-host redis:6379

# Remove redis, watch from Procfile
sed -i '/redis/d' ./Procfile
sed -i '/watch/d' ./Procfile

bench get-app drive --branch main

bench new-site localhost \
--force \
--mariadb-root-password password \
--admin-password password \
--no-mariadb-socket

bench --site localhost install-app drive
bench --site localhost set-config developer_mode 1
bench --site localhost clear-cache
bench --site localhost set-config mute_emails 1
bench use localhost

bench start

Just to make sure, you are trying to log in with the default credentials declared in the init.sh? So the username would be administrator and password would be password.

If that’s not the issue could you attach a screenshot of the JS console to check any errors? As well as checking whether all the containers are up and running.

1 Like

The setup you’ve done is development setup. You need to execute bench start every time you start development.

Go through this Frequently Asked Questions · frappe/frappe_docker Wiki · GitHub

1 Like