Guide for Joplin-Server on Raspberry Pi

That says the processor is 64-bit.

Try typing the command getconf LONG_BIT and see if the result is 32 or 64.

Aha.

Crapolla

Thanks

And the warnings?

dpoulton:

Well, might have been something similar :upside_down_face:

Changed completely just for fun.

It's churning away as we speak.

'nuther silly assed question while that's doing it's thing

Item 6 mentions a Webserver, but says little else about it. Why, how, etc, etc, I mean it's easy enough to install one, but configuration is a whole new thing.

Thanks

Actually it says quite a bit and includes config information. The sections expand depending on the reverse proxy you have / want to use.

The reverse proxy accepts and handles the https (port 443) requests and deals with the encryption certificates on behalf of the Joplin server. It then forwards the traffic to the Joplin Server docker container on port 22300.

1 Like

doh

you are correct

thanks

Well, making progress, I think.

I went through the Apache install.

At the end when I typed "sudo apachectl -k graceful" , it said:

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message

Anyway, if I enter in https://mywebsitename/joplin, I get the initial login page.

I changed my creds my correct e-mail and a new password and it says it will e-mail a confirmation.

But it doesn't . No e-mail.

Going back to https://mywebsitename/joplin/home, I'm told "A confirmation email has been sent to your new address. Please follow the link in that email to confirm. Your email will only be updated after that."

Without the e-mail I'm kinda dead in the water.

Thoughts?

Thanks

Hi,

You can safely ignore this warning or look it up on the web.

To get the E-Mail actually sent, you would have to configure the E-Mail settings in the docker-compose file. Please look up the instructions on how to do this in the forum via the search. If you don't want to setup this, you can also login as the admin, go to "Admin", "Emails", look up the desired E-Mail and click the link. This is how I do it, as I am the only user on the instance and I didn't want to configure the E-Mail config.

Sweet

That all worked.

Before I link to the server, how do I change the location of the storage files?

The SD card I'm running off of is only 65gb. I want the server to save the files to my NAS box. I can map that easily enough.

Thanks

If you just want to change the database location, you can map the path inside the container to your desired path outside of the container with

services:
    db:
        volumes:
            - /desired/path:/var/lib/postgresql/data

To do this change, shutdown the containers, do the change, start the server back up and do a re-upload from one joplin application. Always make sure you have a backup of your data before changing any server configuration.


If you'd like to have contents and attachments separated, follow this link: joplin/packages/server/README.md at dev · laurent22/joplin · GitHub .

You will end up with something looking like this:

services:
    db:
        volumes:
            - /desired/path/for/joplin-data:/var/lib/postgresql/data
    app:
        volumes:
          - /desired/path/for/joplin-content:/home/content
          - STORAGE_DRIVER=Type=Filesystem; Path=/home/content

Edits because of misclicks

Well,

Going backwards.

Don't really understand the syntax you provided with the colon.

I changed the docker-compose.yml to a couple of

-/data/joplin-data:/mnt/Joplin

And pulled the file and restarted.

It wails away for a bit and I get an endless;

Killing the process and changing docker-compose.yml back to original now get the same thing.

The odd thing is the daemon is working as I can log in.

Trying to synchronize, I'm told the URL is incorrect.

Checking the synchronization target I get:

Error. Please check that URL, username, password, etc. are correct and that the sync target is accessible. The reported error was:
Not a valid URL: mywebsite.com/api/sessions

Not encouraging.

The folder I want to save everything is /mnt/Joplin

What would the proper syntax be for that?

Thanks

As shown by @MrKanister, when mapping volumes the path to the left of the colon is on your system. Everything to the right of the colon is inside the container. Unless you are a really advanced Docker user you will never need to change anything to the right of the colon.

So if you want to map a folder on your system called /mnt/joplin to where the Joplin Server data is located within the container (/var/lib/postgresql/data) then it would be:

/mnt/joplin:/var/lib/postgresql/data

Well,

I've beat my head on this for a week now.

I've run through the setup process so many times that I've bumped into the LetsEncrypt weekly cert limit.

I cannot get the server to use a mounted drive for storage. I've tried a symlink to the folder, nothing works.

I always get error: could not change permissions of directory "/var/lib/postgresql\data": Operation not supported

So, for now I'm syncing locally.

Unfortunately it's not going to take long to fill up this sd card at 64gb.

Any ideas on how to move forward with a mounted external storage drive?

It's a Synology NAS that I've got mounted via CIFS.

That part works just fine.

Is this, perhaps a permission issue?

My compose-docker file looks like this:

services:
db:
restart: unless-stopped
image: postgres:latest
ports:
- "5432:5432"
volumes:
- /home/joplin/data/:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=mypassword
- POSTGRES_USER=joplin
- POSTGRES_DB=joplin
app:
environment:
- APP_BASE_URL=https://MY-SERVER.COM/joplin
- APP_PORT=22300
- POSTGRES_PASSWORD=mypassword
- POSTGRES_DATABASE=joplin
- POSTGRES_USER=joplin
- POSTGRES_PORT=5432
- POSTGRES_HOST=db
- DB_CLIENT=pg
restart: unless-stopped
image: etechonomy/joplin-server:latest
ports:
- "22300:22300"
depends_on:
- db

where /home/joplin/data is a symbilic link to /mnt/Joplin

It weird as the /data folder wasn't there before the process started, but was created in the process.

Any thoughts?

Addendum as this daemon won't let me add another message (3 in a row ?)

I've filed a support issue over on:

https://github.com/etechonomy/joplin-server

cheers,

Unfortunately I'm very confused.

Few things:

  1. Please remove this issue (Unable to save files to mounted drive · Issue #13 · etechonomy/joplin-server · GitHub) as etechonomy just provides automated builds based on joplin server. If you need to file a bug, do it on here: GitHub - laurent22/joplin: Joplin - the secure note taking and to-do app with synchronisation capabilities for Windows, macOS, Linux, Android and iOS. (currently you don't need to file an issue as there is something wrong with your setup, not with the image)

  2. If your issue persists after my solution attempts below, please create your own topic in the forum so that this thread doesn't get flooded.

  3. Please post code inside of a code block (begin: ```, end: ```)

Is this the exact (!) error message? I ask because of the one backwards slash at /var/lib/postgresql\data. Here as well: Please post stuff like this inside of code blocks or inline code for better readability.

Which /data folder do you reference here? It can't be /home/joplin/data as you mention you've created it as a symbolic link instead.

I don't get, what you mean by this.


Now to some solution attempts:

Maybe rewrite this line to - /home/joplin/data:/var/lib/postgresql/data (removed trailing /).

  1. Try the whole thing without symbolic links first. Just try to map the folder inside of the container to some folder outside of the container and see if that works.

  2. Why do you use a sym link in the first place? Rewrite the line above to - /mnt/Joplin:/var/lib/postgresql/data and you should be fine without a link.

  3. I don't think it is a permission problem, as I never had problems with those. But for you to check, my data folder has permission 700, uid/gid 999. However this shouldn't be an issue as docker creates that folder for you.

Dunno how to reply inline,

#4 this was a fat finger issue, should have been "error: could not change permissions of directory "/var/lib/postgresql/data": Operation not supported

I've tried: "/mnt/Joplin:/var/lib/postgresql/data"

DOES NOT WORK....

I just changed the compose-docker.yml from:

"/data/joplin-data:/var/lib/postgresql/data" -> which provides a working system.

to:

"/mnt/joplin-data:/var/lib/postgresql/data" -> which creates a non-working system

This was the only change in the yam file.

This is the output:

This is the contents of the two folders (from Midnight Commander) I copied the contents of /data/joplin-data to /mnt/joplin-data before changing the yml file.

Changing back to /data/joplin-data results in:

I genuinely do NOT think this is a Joplin Server issue. I think it's a postgresql issue. that's why I posted the issue here https://github.com/etechonomy/joplin-server

My data folder has uid/gid 999. Try setting those recursively via sudo chown 999:999 -R /mnt/joplin-data.

If this does not succeed, please create a new topic and explain from the beginning.

Inline code begins and ends with one `. You can also press Ctrl + e or click on the code symbol in the format bar above the text field.

Cheers

Still doesn't work.

Even changed the UID in fstab to root.

Where do I start a new topic?

Hi all
I have this issue:

Invalid path format: 192.168.0.235:22300/login
Go to login page

described in this topic.
And I can't get out of it. Could a charitable soul help me?