Dokuwiki on Electric Eel?

Running Dragonfish I have Dokuwiki running via Truecharts app. I am OK transferring all my other apps and settings to Electric Eel (Manually and automatic upgrade)

However the single blocker is Dokuwiki for which I’ve tried various YAML files (including the “official” one), and either they fail or don’t allow access to the config page etc on the designated ports

Does anyone have experience of success running dokuwiki on EE and able to provide tips. BW Tim

It would be helpful if you could show us what you were working with, what the yaml looks like and what the exact error messages are.

Hi, thanks (I was Naively thinking someone would say, Yeah I had this issue but this worked, but not to be maybe :-))

I used the “official” docker YAML

(Below)

# This is an example of a docker-compose file for DokuWiki. Familiarity with Docker and docker-compose is assumed.
# Adjust this to your needs before using.

services:
  dokuwiki:
    image: dokuwiki/dokuwiki:stable # other tags: master, <date> or <codename>
    user: "1000:1000" # adjust to your required user id
    restart: unless-stopped
    ports:
      - "8080:8080" # internal port is 8080, map to what you need
    environment:
      PHP_TIMEZONE: Europe/Berlin
      #PHP_MEMORYLIMIT: 256M
      #PHP_UPLOADLIMIT: 128M
    volumes:
      - ./storage:/storage

It “Seems” to run through without issue, but in the App list it immediately is marked stopped and starting fails…

This is the docker_logs.txt for today when I ran the YAML (no other apps installed)


Jan 11 15:55:33 truenas dockerd[4548]: time="2025-01-11T15:55:33.295240492Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:55:34 truenas dockerd[4548]: time="2025-01-11T15:55:34.275832054Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:55:35 truenas dockerd[4548]: time="2025-01-11T15:55:35.801356992Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:55:36 truenas dockerd[4548]: time="2025-01-11T15:55:36.985979080Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:55:38 truenas dockerd[4548]: time="2025-01-11T15:55:38.379246320Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:55:40 truenas dockerd[4548]: time="2025-01-11T15:55:40.546126132Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:55:44 truenas dockerd[4548]: time="2025-01-11T15:55:44.266895200Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:55:51 truenas dockerd[4548]: time="2025-01-11T15:55:51.206675297Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:56:04 truenas dockerd[4548]: time="2025-01-11T15:56:04.562511514Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:56:30 truenas dockerd[4548]: time="2025-01-11T15:56:30.838326406Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:57:22 truenas dockerd[4548]: time="2025-01-11T15:57:22.644110532Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:58:23 truenas dockerd[4548]: time="2025-01-11T15:58:23.339097513Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 15:59:23 truenas dockerd[4548]: time="2025-01-11T15:59:23.891912418Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 16:00:24 truenas dockerd[4548]: time="2025-01-11T16:00:24.500137517Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 16:01:25 truenas dockerd[4548]: time="2025-01-11T16:01:25.103458395Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 16:02:25 truenas dockerd[4548]: time="2025-01-11T16:02:25.765187942Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 16:03:26 truenas dockerd[4548]: time="2025-01-11T16:03:26.331168751Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 11 16:04:27 truenas dockerd[4548]: time="2025-01-11T16:04:27.032228677Z" level=info msg="ignoring event" container=0d82bace764e6431745200133522fd172fe6d783c4f12c5e8f823e2e87602dbc module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"

BTW, this is on an HP microserver N45, essentially vanilla upgraded from Dragonfish progressively to EE 24.10.1 No other Apps (or anything apart from essential config). Running EE surprisingly well with 10Gb Ram, as a testbed server before upgrading my main TrueNAS server when I’ve learnt stuff

This was an incorrect statement, I had the host/container bit reversed

This part is not right, you need to modify the second half, the bit after the colon, to point to a valid place somewhere on one of your ZFS pools.

Here’s a modified example:
- ./storage:/mnt/tank/dockerapps/dokuwiki
In this example my pool is named tank and I have created a sub-dataset named dockerapps and dokuwiki respectively, using the ordinary Dataset UI.

Edit: The bit above was incorrect, please see LarsR’s correction further down.

For it to fully work I would also need to make sure that the user the app runs as has the correct permissions or ACLs set to access the dokuwiki dataset.

Thanks again, I think I’ve done that, to no avail.

But I also found this in app_lifecycle.log

[2025/01/10 18:00:18] (ERROR) app_lifecycle.compose_action():56 - Failed 'up' action for 'dokuwiki' app:  Network ix-dokuwiki_default  Creating
 Network ix-dokuwiki_default  Created
 Container dokuwiki  Creating
 Container dokuwiki  Created
 Container dokuwiki  Starting
Error response from daemon: driver failed programming external connectivity on endpoint dokuwiki (719d4f25eb4c8904a86c97f741a38ef2f934ffe7b3c319c1632e2810513830f9): failed to bind port 0.0.0.0:443/tcp: Error starting userland proxy: listen tcp4 0.0.0.0:443: bind: address already in use

[2025/01/10 18:01:07] (ERROR) app_lifecycle.compose_action():56 - Failed 'up' action for 'dokuwiki' app:  Network ix-dokuwiki_default  Creating
 Network ix-dokuwiki_default  Created
 Container dokuwiki  Creating
 Container dokuwiki  Created
 Container dokuwiki  Starting
Error response from daemon: driver failed programming external connectivity on endpoint dokuwiki (d4a8c59e10197f7c7725b68415b3d94c56e080686e530adfa99493a7e25e848e): failed to bind port 0.0.0.0:443/tcp: Error starting userland proxy: listen tcp4 0.0.0.0:443: bind: address already in use

Now… two things,

  1. I don’t think it’s bound to 443 (though ?hangover from previous YAML version attempts not being removed?
  2. I now note the dokuwiki instructions (for official docker install but not for other docker versions) make reference to a reverse proxy ??? (And at this point I can feel the water rising above my neck!)

shouldn’t it be the other way around? first part the path on the host and after the : the path in the container?

/mnt/tank/dockerapps/dokuwiki:./storage

Tried it both ways before!!! But tried again as your suggestion (having changed the permissions) and suddenly bingo

SO Now I have a blank/empty dokuwiki to play with and just have to check I can configure it (internally to dokuwiki) and add dokuwiki apps etc and I’m good to go :slight_smile:

Many thanks will post in a few days confirming it works and details of process to achieve it to summarise/round off the thread for others benefits

Cheers
Tim

You are 100% correct, I had a brain fart and reversed the two.

Been there… just spend a week diagnosing why my truenas box didnt boot after a power outage. Didn’t even get a output on a monitor or a post… I thought t he motherboard was fried, so i ordered a new one, spend an afternoon rebuilding the box with a new motherboard, just to be greeted with the same error. Turns out that one of my m.2 ssds died and blocked the motherboard from detecting the gpu, which prevented a succesful post.
Replaced the ssd and it fired right up… now i have a spare motherboard laying around :sweat_smile:

1 Like

In order to summarise the successful process (for me) in case others come a-searching…

Disclaimer
I can’t advise on setting permissions properly
I have no advice regarding configuring dokuwiki itself after install
Caveat emptor!!!

Aim: To install dokuwiki into a Docker container as at this time there is not an official TrueNAS Docker solution for Dokuwiki, and this was the final piece of the jigsaw for me to upgrading from Dragonfish to Electric Eel where I had Dokuwiki running from Truecharts

I used the “Official” Dokuwiki Docker YAML file from here

https://github.com/dokuwiki/docker/blob/main/docker-compose.yml

For me the only element I changed was the last line from

      - ./storage:/storage

to

      - /mnt/tank/data/dokuwikidata:/storage

where /mnt/tank/data/dokuwikidata is the path to the dataset I had created for this purpose. Your path will be different

The main issue I had, came down to permissions for this dataset, but once fixed dokuwiki came up nicely.

Because this was a vanilla server I got a blank dokuwiki , but when I redid things, creating a new dataset, and pasted the conf, data, lib folders from my other server into the dataset, and ran the YAML file afresh I got the old dokuwiki site back up again.

This may not be a complete guide but may help another complete idiot to at least get some way there

1 Like