1Password Connect Sync silently fails to initialize database.

Options

Hi, I've been trying to deploy a 1Password Connect Sync instance via Portainer on Open Media Vault using the docker-compose.yml file provided on the official docs. However, connect-sync seems to silently fail in creating a database.

3 log_message=(I) starting 1Password Connect Sync ... timestamp=2023-02-05T07:42:41.589666065Z
3 log_message=(I) no existing database found, will initialize at /home/opuser/.op/data/1password.sqlite timestamp=2023-02-05T07:42:41.590238904Z
Error: Server: (failed to OpenDefault), Wrapped: (failed to open db), unable to open database file: no such file or directory
Usage:
  connect-sync [flags]
Flags:
  -h, --help      help for connect-sync
  -v, --version   version for connect-sync
3 log_message=(I) starting 1Password Connect Sync ... timestamp=2023-02-05T07:43:42.190849567Z
3 log_message=(I) no existing database found, will initialize at /home/opuser/.op/data/1password.sqlite timestamp=2023-02-05T07:43:42.191297845Z
Error: Server: (failed to OpenDefault), Wrapped: (failed to open db), unable to open database file: no such file or directory
Usage:
  connect-sync [flags]
Flags:
  -h, --help      help for connect-sync
  -v, --version   version for connect-sync

For reference here is my docker-compose file.

version: "3.4"

services:
  op-connect-api:
    image: 1password/connect-api:latest
    ports:
      - "8080:8080"
    volumes:
      - "/srv/dev-disk-by-uuid-<REDACTED>/personal/jono/1password-credentials.json:/home/opuser/.op/1password-credentials.json"
      - "/srv/dev-disk-by-uuid-<REDACTED>/personal/jono/1password-connect/data:/home/opuser/.op/data"
  op-connect-sync:
    image: 1password/connect-sync:latest
    ports:
      - "8081:8080"
    volumes:
      - "/srv/dev-disk-by-uuid-<REDACTED>/config/1password/1password-credentials.json:/home/opuser/.op/1password-credentials.json"
      - "/srv/dev-disk-by-uuid-<REDACTED>/config/1password/data:/home/opuser/.op/data"
volumes:
  data:

As far as I can tell, directory ownership isnt an issue here. So Im a bit stumped as to what might be causing this.


1Password Version: Not Provided
Extension Version: Not Provided
OS Version: Not Provided
Browser:_ Not Provided

Comments

  • dekaikiwi
    dekaikiwi
    Community Member
    edited February 2023
    Options

    Sorry, the docker-compose version above had different paths mapped for volumes of each image. Ive updated op-connect-sync to use the same volumes as op-connect-api however the issue still persists.

    version: "3.4"
    
    services:
      op-connect-api:
        image: 1password/connect-api:latest
        ports:
          - "8080:8080"
        volumes:
          - "/srv/dev-disk-by-uuid-<REDACTED>/config/1password/1password-credentials.json:/home/opuser/.op/1password-credentials.json"
          - "/srv/dev-disk-by-uuid-<REDACTED>/config/1password/data:/home/opuser/.op/data"
      op-connect-sync:
        image: 1password/connect-sync:latest
        ports:
          - "8081:8080"
        volumes:
          - "/srv/dev-disk-by-uuid-<REDACTED>/config/1password/1password-credentials.json:/home/opuser/.op/1password-credentials.json"
          - "/srv/dev-disk-by-uuid-<REDACTED>/config/1password/data:/home/opuser/.op/data"
    volumes:
      data:
    
    
  • dnk
    dnk
    Community Member
    Options

    Did you ever figure this out? I was just giving this a go, and I have the same error.

    Thanks for your time.

  • Hi there! Sorry you are running into this issue. From looking at your docker-compose.yml I don't see anything immediately concerning. Are you able to confirm that the /home/opuser/.op/data directory has been created?

  • sujith
    sujith
    Community Member
    edited October 2023
    Options

    can you try running the docker-compose.yaml file where the 1password-credentials.json.

    Please find my docker-compose file. It worked.

    version: "3.4"
    
    services:
      op-connect-api:
        image: 1password/connect-api:latest
        ports:
          - "8080:8080"
        volumes:
          - "./1password-credentials.json:/home/opuser/.op/1password-credentials.json"
          - "./data:/home/opuser/.op/data"
      op-connect-sync:
        image: 1password/connect-sync:latest
        ports:
          - "8081:8080"
        volumes:
          - "./1password-credentials.json:/home/opuser/.op/1password-credentials.json"
          - "./data:/home/opuser/.op/data"
    
    volumes:
      data:
    
  • blckpythn
    blckpythn
    Community Member
    edited January 27
    Options

    Having this same problem. Using Azure Container Apps and Azure Files as the backend storage.

    2024-01-27T21:35:23.35117  Connecting to the container 'op-connect-sync'...
    2024-01-27T21:35:23.36751  Successfully Connected to container: 'op-connect-sync' [Revision: 'op-connect-sync--7kbkaid-698d99fb65-g57db', Replica: 'op-connect-sync--7kbkaid']
    2024-01-27T21:35:07.005240310Z {"log_message":"(D) enabling bus peer auto-discovery","timestamp":"2024-01-27T21:35:07.004982628Z","level":4}
    2024-01-27T21:35:07.005547442Z {"log_message":"(D) configured to use HTTP with no TLS","timestamp":"2024-01-27T21:35:07.005231843Z","level":4}
    2024-01-27T21:35:07.005555067Z {"log_message":"(D) [discovery-local] starting discovery, advertising endpoint 39929 /meta/message","timestamp":"2024-01-27T21:35:07.00527772Z","level":4}
    2024-01-27T21:35:07.005630427Z {"log_message":"(D) mounting http route GET /heartbeat","timestamp":"2024-01-27T21:35:07.005404496Z","level":4}
    2024-01-27T21:35:07.005640275Z {"log_message":"(D) mounting http route GET /health","timestamp":"2024-01-27T21:35:07.005437618Z","level":4}
    2024-01-27T21:35:07.005644854Z {"log_message":"(I) starting 1Password Connect Sync ...","timestamp":"2024-01-27T21:35:07.005446144Z","level":3}
    2024-01-27T21:35:07.005649242Z {"log_message":"(D) serving on :8080","timestamp":"2024-01-27T21:35:07.005461422Z","level":4}
    2024-01-27T21:35:07.056904855Z {"log_message":"(I) no existing database found, will initialize at /home/opuser/.op/data/1password.sqlite","timestamp":"2024-01-27T21:35:07.056771469Z","level":3}
    2024-01-27T21:35:12.298081171Z Error: Server: (failed to OpenDefault), Wrapped: (failed to open db), database is locked
    2024-01-27T21:35:12.298273509Z Usage:
    2024-01-27T21:35:12.298279670Z   connect-sync [flags]
    2024-01-27T21:35:12.298282375Z 
    2024-01-27T21:35:12.298285100Z Flags:
    2024-01-27T21:35:12.298288006Z   -h, --help      help for connect-sync
    2024-01-27T21:35:12.298290571Z   -v, --version   version for connect-sync
    2024-01-27T21:35:12.298293025Z 
    

    It's able to create 1password.sqlite, but then immediately complains that it is locked.