Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to start Wallabag - Fresh install w/ sqlite #419

Open
erkerb4 opened this issue Aug 2, 2024 · 3 comments
Open

Unable to start Wallabag - Fresh install w/ sqlite #419

erkerb4 opened this issue Aug 2, 2024 · 3 comments

Comments

@erkerb4
Copy link

erkerb4 commented Aug 2, 2024

Hello,

First, thank you very much for the project! I am attempting to get started with Wallabag using a simple setup with SQLite; however, I am running into an issue during the first startup. I am trying to deploy it with docker, and the error I am getting is "/entrypoint.sh: line 30: can't create app/config/parameters.yml: nonexistent directory".

Here is my docker-compose.yml

version: "3.9"
services:
  wallabag:
    image: ghcr.io/wallabag/docker:2.6.9
    restart: unless-stopped
    environment:
      - SYMFONY__ENV__DATABASE_DRIVER=pdo_sqlite
      - SYMFONY__ENV__DOMAIN_NAME=https://wallabag.home.lab
      - SYMFONY__ENV__SERVER_NAME="Wallabag"
    volumes:
      - /mnt/data/wallabag:/var/www/wallabag
    healthcheck:
      test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost/api/info"]
      interval: 1m
      timeout: 3s
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.wallabag.entrypoints=websecure"
      - "traefik.http.routers.wallabag.tls=true"
      - "traefik.http.routers.wallabag.tls.certresolver=le"
      - "traefik.http.routers.wallabag.rule=Host(`wallabag.home.lab`)"
      - "traefik.http.routers.wallabag.service=wallabagwebui"
      - "traefik.http.services.wallabagwebui.loadbalancer.server.port=80"
      - "traefik.http.services.wallabagwebui.loadbalancer.server.scheme=http"

Here is the logs:

wallabag-1  | Starting wallabag ...
wallabag-1  | /entrypoint.sh: line 30: can't create app/config/parameters.yml: nonexistent directory

I have also added redis, thinking there maybe missing vars however that did not change the response. To make it easy to read, I only included wallabag deployment details from my docker-compose file.

@erkerb4
Copy link
Author

erkerb4 commented Aug 3, 2024

Alright, I made a bit of progress. I realized that mounting at /var/www/wallabag was the culprit. After reviewing the entrypoint, i realized it was a relative path, which then explains the nonexistent directory.

This is the updated docker-compose now:

version: "3.9"
services:
  wallabag:
    image: ghcr.io/wallabag/docker:2.6.9
    restart: unless-stopped
    environment:
      - SYMFONY__ENV__DATABASE_DRIVER=pdo_sqlite
      - SYMFONY__ENV__DOMAIN_NAME=https://wallabag.home.lab
      - SYMFONY__ENV__SERVER_NAME="Wallabag"
    volumes:
    volumes:
      - /mnt/data/wallabag/data:/var/www/wallabag/data
      - /mnt/data/wallabag/images:/var/www/wallabag/web/assets/images
    healthcheck:
      test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost/api/info"]
      interval: 1m
      timeout: 3s
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.wallabag.entrypoints=websecure"
      - "traefik.http.routers.wallabag.tls=true"
      - "traefik.http.routers.wallabag.tls.certresolver=le"
      - "traefik.http.routers.wallabag.rule=Host(`wallabag.home.lab`)"
      - "traefik.http.routers.wallabag.service=wallabagwebui"
      - "traefik.http.services.wallabagwebui.loadbalancer.server.port=80"
      - "traefik.http.services.wallabagwebui.loadbalancer.server.scheme=http"
wallabag-1  | Starting wallabag ...
wallabag-1  | Configuring the SQLite database ...
wallabag-1  |
wallabag-1  | In ExceptionConverter.php line 76:
wallabag-1  |
wallabag-1  |   An exception occurred in the driver: SQLSTATE[HY000] [14] unable to open da
wallabag-1  |   tabase file
wallabag-1  |
wallabag-1  |
wallabag-1  |
wallabag-1  | In Exception.php line 28:
wallabag-1  |
wallabag-1  |   SQLSTATE[HY000] [14] unable to open database file
wallabag-1  |
wallabag-1  |
wallabag-1  |
wallabag-1  | In Driver.php line 44:
wallabag-1  |
wallabag-1  |   SQLSTATE[HY000] [14] unable to open database file
wallabag-1  |
wallabag-1  | wallabag installer
wallabag-1  | ==================
wallabag-1  |
wallabag-1  |
wallabag-1  | Step 1 of 4: Checking system requirements.
wallabag-1  | ------------------------------------------
wallabag-1  |
wallabag-1  |
wallabag-1  |  ------------------------- -------- -----------------------------------------------------------------------------------------------------------------------
wallabag-1  |   Checked                   Status   Recommendation
wallabag-1  |  ------------------------- -------- -----------------------------------------------------------------------------------------------------------------------
wallabag-1  |   PDO Driver (pdo_sqlite)   OK!
wallabag-1  |   Database connection       ERROR!   Can't connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [14] unable to open database file
wallabag-1  |   Database version          OK!
wallabag-1  |   curl_exec                 OK!
wallabag-1  |   curl_multi_init           OK!
wallabag-1  |  ------------------------- -------- -----------------------------------------------------------------------------------------------------------------------
wallabag-1  |
wallabag-1  |
wallabag-1  | 00:02:34 CRITICAL  [console] Error thrown while running command "wallabag:install --env=prod -n". Message: "Some system requirements are not fulfilled. Please check output messages and fix them." ["exception" => RuntimeException { …},"command" => "wallabag:install --env=prod -n","message" => "Some system requirements are not fulfilled. Please check output messages and fix them."]
wallabag-1  |
wallabag-1  |
wallabag-1  | In InstallCommand.php line 188:
wallabag-1  |
wallabag-1  |   Some system requirements are not fulfilled. Please check output messages an
wallabag-1  |   d fix them.
wallabag-1  |
wallabag-1  |
wallabag-1  |
wallabag-1  | wallabag:install [--reset] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-e|--env ENV] [--no-debug] [--] <command>

Let's see what i am missing now.

@Kdecherf
Copy link
Member

Kdecherf commented Aug 7, 2024

Hello @erkerb4,

The database will be written in a db/ subfolder, ensure that the container can write in your host folder /mnt/data/wallabag/data

@erkerb4
Copy link
Author

erkerb4 commented Aug 7, 2024

Hello @erkerb4,

The database will be written in a db/ subfolder, ensure that the container can write in your host folder /mnt/data/wallabag/data

Hello!

Yes, the container has full access to /mint/data/wallabag/data directory. The container is running as root, and creates the db directory. That's all it does.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants