For those self-hosting a lemmy instance, what hardware are you using? I am currently using a small Hetzner VPS. It has 2 vCPU, 2GB RAM and 40GB SSD storage. My instance is currently just in testing with me as the only user, but I plan to use it for close friends or family that may want to try this out, but might not want to sign up for a different instance. My CPU and RAM usage is great so far. My only concern is how large the storage will balloon to over time. I’ve been up for ~20 hours and it’s grown to 1.5G total volume since.

  • greg
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    If I can eventually get it to work, I’ll be hosting my personal Lemmy instance on a Hetzner CX21 VPS (2 CPU, 4GB RAM). Unfortunately after about a dozen attempts, with many variables tweaked to try to narrow down the issue, I still get nothing but a spinning button when I try to login after installation. I find it so odd that some people have no problem getting it up-and-running, and it simply won’t work for others.

    • hailstorm@notlemmy.notawebsite.fr
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I had this issue today while making my own server, i think i fixed it by telling it to not use the dev version of lemmy and the v1.17.1 version of lemmy-ui.

      If you need my whole docker-compose.yml:

      version: "3.3"
      networks:
        # communication to web and clients
        lemmyexternalproxy:
        # communication between lemmy services
        lemmyinternal:
          driver: bridge
          internal: true
      
      services:
        proxy:
          image: nginx:1-alpine
          networks:
            - lemmyinternal
            - lemmyexternalproxy
          ports:
            # actual and only port facing any connection from outside
            # Note, change the left number if port 1236 is already in use on your system
            # You could use port 80 if you won't use a reverse proxy
            - "82:82"
          volumes:
            - ./nginx.conf:/etc/nginx/nginx.conf:ro,Z
          restart: always
          depends_on:
            - pictrs
            - lemmy-ui
      
        lemmy:
          image: dessalines/lemmy:0.17.4
          # use this to build your local lemmy server image for development
          # run docker compose up --build
          #build:
          #  context: ../
          #  dockerfile: docker/Dockerfile
            # args:
            #   RUST_RELEASE_MODE: release
          # this hostname is used in nginx reverse proxy and also for lemmy ui to connect to the backend, do not change
          hostname: lemmy
          networks:
            - lemmyinternal
            - lemmyexternalproxy
          restart: always
          environment:
            - RUST_LOG="warn,lemmy_server=debug,lemmy_api=debug,lemmy_api_common=debug,lemmy_api_crud=debug,lemmy_apub=debug,lemmy_db_schema=debug,lemmy_db_views=debug,lemmy_db_views_actor=debug,lemmy_db_views_moderator=debug,lemmy_routes=debug,lemmy_utils=debug,lemmy_websocket=debug"
            - RUST_BACKTRACE=full
          volumes:
            - ./lemmy.hjson:/config/config.hjson:Z
          depends_on:
            - postgres
            - pictrs
      
        lemmy-ui:
          image: dessalines/lemmy-ui:0.17.4
          # use this to build your local lemmy ui image for development
          # run docker compose up --build
          # assuming lemmy-ui is cloned besides lemmy directory
          # build:
          #   context: ../../lemmy-ui
          #   dockerfile: dev.dockerfile
          networks:
            - lemmyinternal
          environment:
            # this needs to match the hostname defined in the lemmy service
            - LEMMY_UI_LEMMY_INTERNAL_HOST=lemmy:8536
            # set the outside hostname here
            - LEMMY_UI_LEMMY_EXTERNAL_HOST=localhost:1234
            - LEMMY_HTTPS=true
          depends_on:
            - lemmy
          restart: always
      
        pictrs:
          image: asonix/pictrs:0.4.0-beta.19
          # this needs to match the pictrs url in lemmy.hjson
          hostname: pictrs
          # we can set options to pictrs like this, here we set max. image size and forced format for conversion
          # entrypoint: /sbin/tini -- /usr/local/bin/pict-rs -p /mnt -m 4 --image-format webp
          networks:
            - lemmyinternal
          environment:
            - PICTRS_OPENTELEMETRY_URL=http://otel:4137
            - PICTRS__API_KEY=API_KEY
            - RUST_LOG=debug
            - RUST_BACKTRACE=full
            - PICTRS__MEDIA__VIDEO_CODEC=vp9
            - PICTRS__MEDIA__GIF__MAX_WIDTH=256
            - PICTRS__MEDIA__GIF__MAX_HEIGHT=256
            - PICTRS__MEDIA__GIF__MAX_AREA=65536
            - PICTRS__MEDIA__GIF__MAX_FRAME_COUNT=400
          user: 991:991
          volumes:
            - ./volumes/pictrs:/mnt:Z
          restart: always
      
        postgres:
          image: postgres:15-alpine
          # this needs to match the database host in lemmy.hson
          # Tune your settings via
          # https://pgtune.leopard.in.ua/#/
          # You can use this technique to add them here
          # https://stackoverflow.com/a/30850095/1655478
          hostname: postgres
          command:
            [
              "postgres",
              "-c",
              "session_preload_libraries=auto_explain",
              "-c",
              "auto_explain.log_min_duration=5ms",
              "-c",
              "auto_explain.log_analyze=true",
              "-c",
              "track_activity_query_size=1048576",
            ]
          networks:
            - lemmyinternal
            # adding the external facing network to allow direct db access for devs
            - lemmyexternalproxy
          ports:
            # use a different port so it doesnt conflict with potential postgres db running on the host
            - "5433:5432"
          environment:
            - POSTGRES_USER=lemmy
            - POSTGRES_PASSWORD=InsertDBPasswordHere
            - POSTGRES_DB=lemmy
          volumes:
            - ./volumes/postgres:/var/lib/postgresql/data:Z
          restart: always
      
      
    • Zach @bigfoot.ninja
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I had this issue and the cause was the email server. If you’re using smtp you’ll have to make sure your vps opens port 25.

      However you can also just register without an email and it should work

    • eric@techy.news
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I experienced this too. If you’re logging in as an admin with email verification turned on, there is a bug that prevents you from logging in (since technically your email isn’t verified yet). I was able to get logged in by following the steps here (https://lemmy.click/comment/973) which included modifying the database table to mark your account as verified.