sytone / obsidian-remote

Run Obsidian.md in a browser via a docker container.
MIT License
1.45k stars 141 forks source link

Docker compose does not start - Guacamole connection closed during handshake #56

Open nkgiovannivl opened 1 year ago

nkgiovannivl commented 1 year ago

Describe the bug At first setup of docker compose logs shows error related to Guacamole connection closed during handshake

To Reproduce Below docker compose:

version: "3"
services:
  obsidian:
    image: 'ghcr.io/sytone/obsidian-remote:latest'
    container_name: obsidian-remote
    restart: always
    ports:
      - 8080:8080
      - 8443:8443
    volumes:
      - obsidian_vaults:/vaults
      - obsidian_config:/config
    environment:
      - PUID=0
      - PGID=0
      - TZ=America/Bogota
      - DOCKER_MODS=linuxserver/mods:universal-git
      - CUSTOM_PORT="8080"
      - CUSTOM_HTTPS_PORT="8443" 
      - CUSTOM_USER=""
      - PASSWORD=""
      - SUBFOLDER=""
    networks:
      macvlan-favernet:
        ipv4_address: 192.168.1.37      

networks:
  macvlan-favernet:
    external: true
    name: macvlan-favernet

volumes:
  obsidian_vaults:
    external: true
  obsidian_config:
    external: true

Log info from docker:

guacd[1104]: INFO:  Guacamole proxy daemon (guacd) version 1.1.0 started
guacd[1104]: INFO:  Listening on host 0.0.0.0, port 4822
guacd[1104]: INFO:  Guacamole connection closed during handshake
Starting guacamole-lite websocket server
Starting guacamole-lite websocket server
events.js:377
      throw er; // Unhandled 'error' event
      ^
Error: listen EACCES: permission denied "8080"
    at Server.setupListenHandle [as _listen2] (net.js:1314:21)
    at listenInCluster (net.js:1379:12)
    at Server.listen (net.js:1476:5)
    at Object.<anonymous> (/gclient/app.js:217:6)
    at Module._compile (internal/modules/cjs/loader.js:1085:14)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
    at Module.load (internal/modules/cjs/loader.js:950:32)
    at Function.Module._load (internal/modules/cjs/loader.js:790:12)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:75:12)
    at internal/main/run_main_module.js:17:47
Emitted 'error' event on WebSocketServer instance at:
    at Server.WebSocketServer._onServerError (/gclient/node_modules/ws/lib/WebSocketServer.js:82:50)
    at Server.emit (events.js:400:28)
    at emitErrorNT (net.js:1358:8)
    at processTicksAndRejections (internal/process/task_queues.js:82:21) {
  code: 'EACCES',
  errno: -13,
  syscall: 'listen',
  address: '"8080"',
  port: -1
}
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
starting sesman in foreground...
Global configuration:
    ListenAddress:            127.0.0.1
    ListenPort:               3350
    EnableUserWindowManager:  1
    UserWindowManager:        startwm.sh
    DefaultWindowManager:     /etc/xrdp/startwm.sh
    ReconnectScript:          /etc/xrdp/reconnectwm.sh
    AuthFilePath:             disabled
Session configuration:
    MaxSessions:              50
    X11DisplayOffset:         10
    KillDisconnected:         0
    IdleTimeLimit:            0
    DisconnectedTimeLimit:    0
    Policy:                   0
Security configuration:
    AllowRootLogin:           1
    MaxLoginRetry:            4
    AlwaysGroupCheck:         0
    RestrictOutboundClipboard: 0
    TSUsersGroup:             (not defined)
    TSAdminsGroup:            (not defined)
Xorg parameters:
    Parameter 00              /usr/lib/xorg/Xorg
    Parameter 01              -config
    Parameter 02              xrdp/xorg.conf
    Parameter 03              -noreset
    Parameter 04              -nolisten
    Parameter 05              tcp
    Parameter 06              -logfile
    Parameter 07              .xorgxrdp.%s.log
Xvnc parameters:
    Parameter 00              Xvnc
    Parameter 01              -bs
    Parameter 02              -nolisten
    Parameter 03              tcp
    Parameter 04              -localhost
    Parameter 05              -dpi
    Parameter 06              96
SessionVariables parameters:
    Parameter 00              PULSE_SCRIPT=/etc/xrdp/pulse/default.pa
[20230525-04:33:54] [DEBUG] libscp initialized
[20230525-04:33:54] [INFO ] starting xrdp-sesman with pid 1094
[20230525-04:33:54] [INFO ] listening to port 3350 on 127.0.0.1
[20230525-04:33:55] [INFO ] A connection received from ::ffff:127.0.0.1 port 59356
[20230525-04:33:55] [WARN ] libscp network error.
[20230525-04:33:55] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
[20230525-04:33:55] [INFO ] A connection received from ::ffff:127.0.0.1 port 59366
[20230525-04:33:55] [WARN ] libscp network error.
[20230525-04:33:55] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
[20230525-04:33:56] [INFO ] A connection received from ::ffff:127.0.0.1 port 59378
[20230525-04:33:56] [WARN ] libscp network error.
[20230525-04:33:56] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
[20230525-04:33:56] [INFO ] A connection received from ::ffff:127.0.0.1 port 59382
[20230525-04:33:56] [WARN ] libscp network error.
[20230525-04:33:56] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
[20230525-04:33:57] [INFO ] A connection received from ::ffff:127.0.0.1 port 59394
[20230525-04:33:57] [WARN ] libscp network error.
[20230525-04:33:57] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
[20230525-04:33:57] [INFO ] A connection received from ::ffff:127.0.0.1 port 59400
[20230525-04:33:57] [WARN ] libscp network error.
[20230525-04:33:57] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
[20230525-04:33:58] [INFO ] A connection received from ::ffff:127.0.0.1 port 59408
[20230525-04:33:58] [WARN ] libscp network error.
[20230525-04:33:58] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
[20230525-04:33:58] [INFO ] A connection received from ::ffff:127.0.0.1 port 59420
[20230525-04:33:58] [WARN ] libscp network error.
[20230525-04:33:58] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
[20230525-04:33:59] [INFO ] A connection received from ::ffff:127.0.0.1 port 59424
[20230525-04:33:59] [WARN ] libscp network error.
[20230525-04:33:59] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
[20230525-04:33:59] [INFO ] A connection received from ::ffff:127.0.0.1 port 59438
[20230525-04:33:59] [WARN ] libscp network error.
[20230525-04:33:59] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
[20230525-04:34:00] [INFO ] A connection received from ::ffff:127.0.0.1 port 59442
[20230525-04:34:00] [WARN ] libscp network error.
[20230525-04:34:00] [DEBUG] Closed socket 7 (AF_INET6 ::ffff:127.0.0.1 port 3350)
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake
guacd[1104]: INFO:  Guacamole connection closed during handshake

Expected behavior Start normally

Screenshots N/A

Desktop (please complete the following information):

N/A

Smartphone (please complete the following information):

N/A

Additional context Add any other context about the problem here.

stefwill commented 1 year ago

I'm having the same issue.

gitwittidbit commented 1 year ago

Same here. Any solution for this available yet?

bau-tech commented 1 year ago

Having the same problem. Will there be fix for this in the near future?

sytone commented 1 year ago

Ill try this config later this week to see if I can reproduce.

gab-luz commented 1 year ago

I second that. Same problem for me. I hope somebody else fix it. I've tried using UFW to allow ports. Nothing seems to work.

gab-luz commented 1 year ago

Using the following docker-compose.yml worked for me. Obsidian-remote now works, but I don't like how it works. It basically uses Guacamole as VNC server/viewer. It doesn't fit the whole browser window if you click on it.

Docker-compose.yml config I found (you can modify it according to your own taste): version: "3.9" services: obsidian: image: ghcr.io/sytone/obsidian-remote:latest container_name: Obsidian-Remote hostname: obsidian-remote mem_limit: 1g cpu_shares: 768 security_opt:

witnes0417 commented 1 year ago

same problem here, use shell interact with the container find that the server failed starting.

drewbitt commented 1 year ago

ghcr.io/sytone/obsidian-remote:latest is outdated with the last release of it 9 months ago. Changes to the base image and some fixes have went out since - @sytone can we get an update to the Docker tag to better help you debug this on the current codebase?

Woynert commented 1 year ago

I solved it by removing the "" from the port, like so

- CUSTOM_PORT=8080
- CUSTOM_HTTPS_PORT=8443
arguemore commented 1 year ago

I solved it by removing the "" from the port, like so

- CUSTOM_PORT=8080
- CUSTOM_HTTPS_PORT=8443

Hi there! I tried doing what you did but mine just said websocat: invalid port number. I'm doing the installation through Codesandbox for context.

gustavbnm commented 1 year ago

Hi there! I tried doing what you did but mine just said websocat: invalid port number. I'm doing the installation through Codesandbox for context.

I'm getting the same message and when loading the page in a browser I also get Cannot GET /. This is the state of my docker-compose.

services:
  obsidian:
    image: 'ghcr.io/sytone/obsidian-remote:latest'
    container_name: obsidian-remote
    restart: unless-stopped
    ports:
      - 8081:8081
      - 8443:8443
    volumes:
      - /home/obsidian/vaults:/vaults
      - /home/obsidian/config:/config
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Stockholm
      - DOCKER_MODS=linuxserver/mods:universal-git
      - CUSTOM_PORT=8081
      - CUSTOM_HTTPS_PORT=8443
      - CUSTOM_USER=""
      - PASSWORD=""
      - SUBFOLDER=""
tosmaniac commented 1 year ago

Hi Guys,

By doing a bit of a mix of the two docker compose that are in this thread here is one that works:


  obsidian:
    image: 'ghcr.io/sytone/obsidian-remote:latest'
    container_name: obsidian-remote
    restart: unless-stopped
    hostname: obsidian-remote
    mem_limit: 2g
    cpu_shares: 768
    security_opt:
      - no-new-privileges:true
    healthcheck:
      test: curl -f http://localhost:8080/ || exit 1
    ports:
      - 8080:8080
      - 8443:8443
    volumes:
      - /home/tosmaniac/docker/obsidian/vaults:/vaults
      - /home/tosmaniac/docker/obsidian/config:/config
    environment:
      - PUID=1000
      - PGID=100
      - TZ=European/Berlin
      - DOCKER_MODS=linuxserver/mods:universal-git
#      - CUSTOM_PORT="8080"
#      - CUSTOM_HTTPS_PORT="8443" 
#      - CUSTOM_USER=""
#      - PASSWORD=""
#      - SUBFOLDER=""```

Latest version of obsidian gets installed.

Thank you all.

Florent
fetwar commented 1 year ago

It seems like guacd closing the connection during the handshake with guacamole-lite (I think it runs both? unsure to be honest, I've never used guacamole before) because of some improperly mapped configuration files. They exist in the image, but I think unpinned versions caused it to break after initial release.

Looking into the container with docker compose exec -it obsidian-remote /bin/bash I can see that guaclog outputs the following:

root@obsidian-remote:/# guaclog
guaclog: INFO: Guacamole input log interpreter (guaclog) version 1.1.0
guaclog: INFO: No input files specified. Nothing to do.

I also noticed that the user and group within the container is abc:abc, potentially incorrect user mapping is to blame.


I stopped at the point where I'd have to clone the repo and build the image from the Dockerfile as I am running out of time to fiddle with it today, if anyone gets it working definitely let me know.

p.s. the docker compose config from @tosmaniac modified to have the commented fields uncommented and port numbers unquoted was the closest I managed to get, only outputting this error instead of the longer ones above.

obsidian-remote  | guacd[208]: INFO:    Guacamole proxy daemon (guacd) version 1.1.0 started
obsidian-remote  | guacd[208]: INFO:    Listening on host 0.0.0.0, port 4822
obsidian-remote  | Starting guacamole-lite websocket server
obsidian-remote  | listening on *:8080
obsidian-remote  | guacd[208]: INFO:    Guacamole connection closed during handshake
obsidian-remote  | [guac-init] Auto start set, starting application
obsidian-remote  | websocat: invalid port number
JacobTheEldest commented 11 months ago

I had the websocat: invalid port number, but got it working. I don't understand the fix, but I started removing arguments to get to basic config until I got it working. Key adjustment steps as I progressed:

  obsidian:
    container_name: obsidian
    image: 'ghcr.io/sytone/obsidian-remote:latest'
    restart: unless-stopped
    ports:
      - 8080:8080
    volumes:
      - ./obsidian/vaults:/vaults
      - ./obsidian/config:/config
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=America/New_York
      - DOCKER_MODS=linuxserver/mods:universal-git
shmolf commented 11 months ago

I ended up having to do a number things, which leads me to believe there's not one issue, but several small issues.

Here's my docker-compose.yml Note: I opted to build using the local `Dockerfile` since its more up-to-date. Also, I copied some of this from a [prior post](https://github.com/sytone/obsidian-remote/issues/56#issuecomment-1746552140). ```yml services: obsidian: # image: 'ghcr.io/sytone/obsidian-remote:latest' build: context: ./ dockerfile: Dockerfile container_name: obsidian-remote restart: unless-stopped security_opt: - no-new-privileges:true healthcheck: test: curl -f http://localhost:7436/ || exit 1 ports: - 7436:8080 # I'm using a different host port to avoid collision - 7496:8443 # I'm using a different host port to avoid collision - 27123:27123 - 27124:27124 volumes: - ./my-vaults:/vaults - ./my-config:/config environment: - PUID=1000 # this matches my user when I run `id $USER` - PGID=1000 # this matches my user when I run `id $USER` - TZ=America/New_York - DOCKER_MODS=linuxserver/mods:universal-git - CUSTOM_PORT=8080 - CUSTOM_HTTPS_PORT=8443 - CUSTOM_USER=yourUser - PASSWORD=yourPassword # - SUBFOLDER="" ```

This gave me a little bit of progress, but I couldn't yet open Obsidian successfully. I got some sort of error like /squashfs-root/obsidian is not a directory. To fix this issue, I modified some of the files that were created within the config directory. (mine is setup to the my-config folder)

Updates to menu.xml `my-config/.config/openbox/menu.xml` ```diff - + - /squashfs-root/obsidian --no-sandbox --disable-dev-shm-usage --disable-gpu --disable-software-rasterizer + obsidian --no-sandbox --disable-dev-shm-usage --disable-gpu --disable-software-rasterizer /usr/bin/xterm ```
Changes to autostart `my-config/.config/openbox/autostart` ```diff - /squashfs-root/obsidian --no-sandbox --disable-dev-shm-usage --disable-gpu --disable-software-rasterizer + obsidian --no-sandbox --disable-dev-shm-usage --disable-gpu --disable-software-rasterizer ```

The last change is not required, but something I did just to improve my QoL (Qualify of Life).

Changes to Dockerfile ```diff ... - ARG OBSIDIAN_VERSION=1.4.16 + ARG OBSIDIAN_VERSION=1.5.3 ... ```
sytone commented 10 months ago

Is this on AMD or ARM?

huenfd commented 9 months ago
  obsidian:
    image: 'ghcr.io/sytone/obsidian-remote:latest'
    container_name: obsidian-remote
    restart: unless-stopped
    ports:
      - 6666:8080
      - 8663:8443
    volumes:
      - ${DATA}/obsidian/vaults:/vaults
      - ${DATA}/obsidian/config:/config
    environment:
      - PUID=1003
      - PGID=1003
      - TZ=${TZ}
      - DOCKER_MODS=linuxserver/mods:universal-git
      - CUSTOM_PORT=8080
      - CUSTOM_HTTPS_PORT=8443 
      - CUSTOM_USER=123
      - PASSWORD=123

with this config i got no websocat error, but in the logs i got this:


[2024-02-06 11:28:48] [Connection 1]  Closing connection with error:  Error: WS was inactive for too long
    at ClientConnection.checkActivity (/gclient/node_modules/guacamole-lite/lib/ClientConnection.js:154:24)
    at listOnTimeout (internal/timers.js:557:17)
[2024-02-06 11:28:48] [Connection 1]  Closing guacd connection
    at processTimers (internal/timers.js:500:7)
[2024-02-06 11:28:48] [Connection 1]  Client connection closed
guacd[1135]: ERROR:     User is not responding.
guacd[1135]: INFO:      User "@085c8313-50ce-4eb0-872a-05e831788aae" disconnected (0 users remain)
guacd[1135]: INFO:      Last user of connection "$9225c7a9-a824-415c-8041-03bcd513541e" disconnected
guacd[1135]: INFO:      Internal RDP client disconnected
guacd[1100]: INFO:      Connection "$9225c7a9-a824-415c-8041-03bcd513541e" removed.
rdpClientConRecv: g_sck_recv failed(returned 0)
rdpClientConRecvMsg: error
rdpClientConCheck: rdpClientConGotData failed
rdpClientConDisconnect:
rdpRemoveClientConFromDev: removing clientCon 0x5617e058a850

it doesnt matter if i use the last four lines with the costum ports, user and passwort, same result.

does anybody got it working?

darkwolfgar commented 9 months ago
  obsidian:
    image: 'ghcr.io/sytone/obsidian-remote:latest'
    container_name: obsidian-remote
    restart: unless-stopped
    ports:
      - 6666:8080
      - 8663:8443
    volumes:
      - ${DATA}/obsidian/vaults:/vaults
      - ${DATA}/obsidian/config:/config
    environment:
      - PUID=1003
      - PGID=1003
      - TZ=${TZ}
      - DOCKER_MODS=linuxserver/mods:universal-git
      - CUSTOM_PORT=8080
      - CUSTOM_HTTPS_PORT=8443 
      - CUSTOM_USER=123
      - PASSWORD=123

with this config i got no websocat error, but in the logs i got this:


[2024-02-06 11:28:48] [Connection 1]  Closing connection with error:  Error: WS was inactive for too long
    at ClientConnection.checkActivity (/gclient/node_modules/guacamole-lite/lib/ClientConnection.js:154:24)
    at listOnTimeout (internal/timers.js:557:17)
[2024-02-06 11:28:48] [Connection 1]  Closing guacd connection
    at processTimers (internal/timers.js:500:7)
[2024-02-06 11:28:48] [Connection 1]  Client connection closed
guacd[1135]: ERROR:     User is not responding.
guacd[1135]: INFO:      User "@085c8313-50ce-4eb0-872a-05e831788aae" disconnected (0 users remain)
guacd[1135]: INFO:      Last user of connection "$9225c7a9-a824-415c-8041-03bcd513541e" disconnected
guacd[1135]: INFO:      Internal RDP client disconnected
guacd[1100]: INFO:      Connection "$9225c7a9-a824-415c-8041-03bcd513541e" removed.
rdpClientConRecv: g_sck_recv failed(returned 0)
rdpClientConRecvMsg: error
rdpClientConCheck: rdpClientConGotData failed
rdpClientConDisconnect:
rdpRemoveClientConFromDev: removing clientCon 0x5617e058a850

it doesnt matter if i use the last four lines with the costum ports, user and passwort, same result.

does anybody got it working?

I'm having the same issue, Tried all suggested changes above but nothing is working for me.

mpsparrow commented 7 months ago

I was able to get it working by pulling this newer image not from ghcr.io


services:
  obsidian:
    image: sytone/obsidian-remote:latest
    container_name: obsidian
    hostname: obsidian
    restart: unless-stopped
    ports:
      - 8080:8080
      - 8443:8443
    volumes:
      - /obsidian/vaults:/vaults
      - /obsidian/config:/config
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=America/Toronto
      - DOCKER_MODS=linuxserver/mods:universal-git```
vmysak commented 6 months ago

In 2024 images from ghcr.io are outdated. It is better to use images from dockerhub with latest Obsidian installations.

Preparation

Folders involved: /home/user/Documents/obsidian - obsidian Vault named "obsidian" - folder for my local installation, with installed plugins, .obsidian dir, md files, excalidraw, etc /home/user/Documents/obsidian-remote - some new empty folder - used as docker volume shared folder

Execute:

  1. mkdir -p /home/user/Documents/obsidian-remote/vaults
  2. cp -R /home/user/Documents/obsidian /home/user/Documents/obsidian-remote/vaults/obsidian - copy Vault named "obsidian" to docker volume shared folder

Attention: PUID,PGID in the docker-compose I had problems running container with my host machine user id&group (1000). I was forced to set these environment variables as root (0). Please make attention to file permissions inside obsidian-remote host folder. It is better to sudo rm -r it and make a fresh copy of your local Vault folder

After docker-compose has been started, please open http://localhost:8082/ in your browser. If there is kind of black screen or empty desktop:

  1. right-click - select xterm
  2. cd /opt/obsidian
  3. ./obsidian --no-sandbox

docker-compose.yml

version: '3.8'

services:

  obsidian:
    image: 'sytone/obsidian-remote:latest'
    container_name: obsidian-remote
    restart: unless-stopped
    hostname: obsidian-remote
    security_opt:
      - no-new-privileges:true
    healthcheck:
      test: curl -f http://localhost:8080/ || exit 1
    ports:
      - 8082:8080
      - 8445:8443
    volumes:
      - /home/user/Documents/obsidian-remote/vaults:/vaults
      - /home/user/Documents/obsidian-remote/config:/config
    environment:
      - PUID=0
      - PGID=0
      - TZ=European/Kyiv
      - DOCKER_MODS=linuxserver/mods:universal-git
2ndwonder commented 6 months ago

In 2024 images from ghcr.io are outdated. It is better to use images from dockerhub with latest Obsidian installations.

Preparation

Folders involved: /home/user/Documents/obsidian - obsidian Vault named "obsidian" - folder for my local installation, with installed plugins, .obsidian dir, md files, excalidraw, etc /home/user/Documents/obsidian-remote - some new empty folder - used as docker volume shared folder

Execute:

1. `mkdir -p /home/user/Documents/obsidian-remote/vaults`

2. `cp -R /home/user/Documents/obsidian /home/user/Documents/obsidian-remote/vaults/obsidian` - copy  Vault named "obsidian" to docker volume shared folder

Attention: PUID,PGID in the docker-compose I had problems running container with my host machine user id&group (1000). I was forced to set these environment variables as root (0). Please make attention to file permissions inside obsidian-remote host folder. It is better to sudo rm -r it and make a fresh copy of your local Vault folder

After docker-compose has been started, please open http://localhost:8082/ in your browser. If there is kind of black screen or empty desktop:

1. right-click - select xterm

2. `cd /opt/obsidian`

3. `./obsidian --no-sandbox`

* in Obsidian you can open existing Vault `Open - Computer`, `/vaults/obsidian`

* click "maximize" window button to maximize Obsidian

docker-compose.yml

version: '3.8'

services:

  obsidian:
    image: 'sytone/obsidian-remote:latest'
    container_name: obsidian-remote
    restart: unless-stopped
    hostname: obsidian-remote
    security_opt:
      - no-new-privileges:true
    healthcheck:
      test: curl -f http://localhost:8080/ || exit 1
    ports:
      - 8082:8080
      - 8445:8443
    volumes:
      - /home/user/Documents/obsidian-remote/vaults:/vaults
      - /home/user/Documents/obsidian-remote/config:/config
    environment:
      - PUID=0
      - PGID=0
      - TZ=European/Kyiv
      - DOCKER_MODS=linuxserver/mods:universal-git

The following below does not work for me when I have a black screen. The directory does not exist.

After docker-compose has been started, please open http://localhost:8082/ in your browser. If there is kind of black screen or empty desktop:

right-click - select xterm
cd /opt/obsidian
./obsidian --no-sandbox
wroughtsteel commented 6 months ago

@2ndwonder This is why you need root privileges. Otherwise you cannot access the system files /opt/obsidian

ghostersk commented 5 months ago

First, I am using the one from linuxserver.io, as this project did not seem to work for me, ( white window)

In portainer terminal it was giving error it cannot open the /squashfs-root/obsidian, ofcourse not as there is no folder like that in root of the container. Further checking where the obsidian is on system from the remote terminal which obsidian it is in the /usr/bin/obsidian checking further, there is script to start obsidian, for some reason using the squashfs-root folder, so i just change it to correct location and it works...

nano /config/.config/openbox/autostart
# Comment out the original line and put the good path bellow
#/squashfs-root/obsidian --no-sandbox --disable-dev-shm-usage --disable-gpu --disable-software-rasterizer
/usr/bin/obsidian --no-sandbox --disable-dev-shm-usage --disable-gpu --disable-software-rasterizer

the config folder should be somewhere on your system, as it is maped via docker-compose (in my case)