PhiTux / DailyTxT

Encrypted Diary Web-App
https://hub.docker.com/r/phitux/dailytxt/
MIT License
208 stars 14 forks source link

New installation fails with latest (1.14.0) container-tag #45

Closed Husky110 closed 3 months ago

Husky110 commented 3 months ago

Hi,
When you try to install a new instance of DailyTXT the container crashes on startup with a message stating: syntax error: Unexpected (. This happens when you add the PORT-env-variable. Without that it fails with another message. Once you use the old 1.13.0-tag for setup and switch to the latest-tag then, it works.
Greetings

Stokkie64 commented 3 months ago

HI! Thanks for logging your issue.

Can you post your docker-compose.yml? Without passwords in. I suspect there's a simple syntax error. As this does not occur for me. If that does not appear to be the issue we can look further into steps to reproduce it.

Alternatively you can copy paste it to an online validator.

Husky110 commented 3 months ago

@Stokkie64 - I do not use a docker-compose.yml, since I've set up the container within portainer.
The container runs as standalone with those env-parameters:

ALLOW_REGISTRATION=False
PORT=8765

By the way - the issue still persists - I still see that error in my container notifications. Edit: Posted the wrong env-variables...

PhiTux commented 3 months ago

Hey,

@Husky110 - sorry to hear that! @Stokkie64 - thanks for your help! I also suspect a syntax error... In this case the error is perhaps somewhere in the portainer-configuration?

I have absolutely no experience with portainer, but you need to set a few environment variables! Look at the "installation" section in the readme, there are several env-vars explained. A few of those are necessary, especially the port-variable (not to be confused with the separate port-setting that you need on pretty every docker-container).

Husky110 commented 3 months ago

Hey @PhiTux,

Portainer is just basic docker-commands with a nice gui. You should be able to replicate the issue by just running this in your terminal: docker run -e ALLOW_REGISTRATION=false -e PORT=8765 phitux/dailytxt:latest
I just realized that I posted the wrong env-variables before - fixed that. Please check again.

PhiTux commented 3 months ago

Your command is incomplete. You need the port-setting (as I said, not to be confused with the env-var). This works for me: docker run -p 8765:8765 -e ALLOW_REGISTRATION=false -e PORT=8765 phitux/dailytxt:latest But you will also need to mount a volume for consistent data storage!

Husky110 commented 3 months ago

Yes, but that should have nothing to do with the issue.

PhiTux commented 3 months ago

Well, still I can absolutely not reproduce your issue! Do you have the possibility to test it on another system without portainer and use the docker run command? I just checked it on a separate machine where dailytxt was never running before, and it just worked!

Husky110 commented 3 months ago

Hmm - I tried it on my rootfull-docker-instance and it works... Could this be a docker rootless-issue?

PhiTux commented 3 months ago

That could perhaps be the reason, yes. But I cannot really evaluate this, as I'm not aware enough about the differences of rootful/rootless docker. Normally I would guess that dailytxt doesn't work in such a way, that it makes a difference if it's root or not.

Husky110 commented 3 months ago

Hmm - I don't get it... Tried it with rootless docker again on my other machine and it works... Maybe it has something to do with portainer...
Here is what I set:
Basis:
image

Volume:
image

And env-varibles (note: some of them are set automatically): image

And I still see this:
image

PhiTux commented 3 months ago

Thanks for the images! Why do you set all those Python-Env-variables, like python_version? I can imagine, that this 'confuses' dailytxt, as it uses python itself in the backend. Wrong env-vars might lead to wrong code-interpretation

Husky110 commented 3 months ago

I am not sure if Docker or Portainer does it itself.
I started that with only Allow_Registration and Port - and nothing else.
If you got Discord I can show you...

PhiTux commented 3 months ago

Docker doesn't set those variables. That must be portainer! Can you just delete them?

Husky110 commented 3 months ago

Yep - but they will straight away come back, since those are env-variables within the system itself and portainer allows to change them. Edit: By system I mean the container.

PhiTux commented 3 months ago

Okay I see, so those are the variables that are generated within the container and portainer keeps track of them...

Well, then I'm actually out of ideas... I don't see anything strange in the other settings. Perhaps @Stokkie64 has some idea?

I will close the issue by now, as it doesn't seem to be a dailytxt-error. But feel free to continue asking, if you have other ideas or information.

Stokkie64 commented 3 months ago

I do have portainer running in my homelab so will try to have a look and see if I can reproduce the error.

But that will only be tomorrow/later this week as I'm not home at the moment. Will report back on this thread!