Hello!
I've been trying to setup the joplin server on my aws instance. I'm using the docker-compose file provided in the repository. I have it setup behind nginx as well.
I am able to use the web UI, I created my user and am able to login as myself there. The problem comes when I'm adding it as the synchronization target in the application. I get this error when I test the synchronization configuration.
POST api/files/root/children: Unknown error (400): {"error":"Not allowed: POST "} (Code 400)
I am using the desktop app, version 1.7.11 on MacOS.
Let me know if you need any more details! I'm guessing it's something simple I missed.
Here's my docker-compose for reference:
version: '3'
services:
db:
image: postgres:13.1
volumes:
- ./data/postgres:/var/lib/postgresql/data
ports:
- "5432:5432"
restart: unless-stopped
environment:
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_DB=${POSTGRES_DATABASE}
app:
image: joplin/server:latest
depends_on:
- db
ports:
- "22300:22300"
restart: unless-stopped
environment:
- APP_PORT=22300
- APP_BASE_URL=${APP_BASE_URL}
- DB_CLIENT=pg
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DATABASE=${POSTGRES_DATABASE}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PORT=5432
- POSTGRES_HOST=db
And also for reference here's my nginx config:
server {
server_name joplin.xxxxx.xxxxx;
location / {
proxy_pass http://localhost:22300;
}
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Forwarded-Host $host;
client_max_body_size 400M;
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/joplin.xxxxxxx.xxxxx/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/joplin.xxxxxx.xxxxx/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
access_log /var/log/nginx/joplin.xxxxxxx.xxxxxx.access.log;
error_log /var/log/nginx/joplin.xxxxxxx.xxxxxx.error.log;
}
server {
if ($host = joplin.xxxxx.xxxxx) {
return 301 https://$host$request_uri;
} # managed by Certbot
server_name joplin.xxxxx.xxxxx;
listen 80;
listen [::]:80;
return 404; # managed by Certbot
}