I wanna be back for develop another UI for Lemmy, which will look like modern Reddit, but better.

Earlier i install lemmy with this guide: https://www.youtube.com/watch?v=4fzCUEpFnDg

but now, devs made changes around nginx, so… i cant install Lemmy now. Docker sends me errors))

If you are interested in developing a new UI, please contact me, I need the help of people who understand the installation issue.

  • Salamander@mander.xyz
    link
    fedilink
    arrow-up
    2
    ·
    2 years ago

    Do you want to install a fresh instance, or do you want to upgrade an instance?

    If you are installing fresh, most of that tutorial is still going to work out. But you now need to pull the config file this way:

    wget https://raw.githubusercontent.com/LemmyNet/lemmy/main/config/defaults.hjson lemmy.hjson

    If you install the more recent docker version, you don’t have to install docker-compose the same way. Follow the instructions from the website, and use ‘docker compose’ instead of ‘docker-compose’.

    The nginx configuration does not need to change.

    What problems are you getting?

    • nameasdOP
      link
      fedilink
      arrow-up
      1
      ·
      2 years ago

      Yes i install on clear VDS fresh instance.

      Ok, i write my steps here, hope you can help me and other users :)

      1. Install VDS ubuntu 20

      2. Go to Putty, connect ssh with root;pass

      3. apt -y update && apt -y upgrade

      4. apt -y install vim

      5. Now i need instal docker

      apt -y install ca-certificates curl gnupg lsb-release

      curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

      echo “deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

      apt -y update

      apt -y install docker-ce

      1. Now need delete Apache for stability nginx:

      sudo /etc/init.d/apache2 stop

      sudo apt-get purge apache2

      1. Lets go install nginx

      apt -y install nginx

      sudo systemctl enable nginx

      sudo systemctl start nginx

      sudo systemctl status nginx

      Ok, all works. There are no errors.

      1. Install certbot for https

      apt install certbot python3-certbot-nginx

      certbot certonly --nginx -d uebishe.com,www.uebishe.com

      write my mail, and agree all steps

      1. Now i skip old step about “wget https://raw.githubusercontent.com/LemmyNet/lemmy-ansible/main/templates/nginx.conf -O lemmy.conf”

      2. mkdir /var/www/uebishe.com

      cd /var/www/uebishe.com

      wget https://raw.githubusercontent.com/LemmyNet/lemmy/main/config/defaults.hjson

      wget https://raw.githubusercontent.com/LemmyNet/lemmy/main/docker/prod/docker-compose.yml

      mv defaults.hjson lemmy.hjson

      mkdir -p volumes/pictrs

      chown -R 991:991 volumes/pictrs

      vi lemmy.hjson

      change hostname to “uebishe.com” (without other changes, for the test)

      And now, we run Docker Compose?

      docker compose up -d

      On step 6/7 in “Container uebishecom-proxy-1” terminal told me:

      Error response from daemon: driver failed programming external connectivity on endpoint uebishecom-proxy-1 (e52f822be8a0dc7dab6a590c47a4854b6cf3878b9bf079688eadfd8e6ecf0092): Error starting userland proxy: listen tcp4 0.0.0.0:80: bind: address already in use

      hmm… your advice?

      • nameasdOP
        link
        fedilink
        arrow-up
        1
        ·
        2 years ago

        Find on github comment about it. I will try

        docker run --detach --publish 80:80 --name webserver nginx

        but this doesnt help

      • Salamander@mander.xyz
        link
        fedilink
        arrow-up
        1
        ·
        2 years ago

        Remove the following blocks from the docker-compose file:

        networks:
          # communication to web and clients
          lemmyexternalproxy:
          # communication between lemmy services
          lemmyinternal:
            driver: bridge
            internal: true
        
          proxy:
            image: nginx:1-alpine
            networks:
              - lemmyinternal
              - lemmyexternalproxy
            ports:
              # only ports facing any connection from outside
              - 80:80 
              - 443:443
            volumes:
              - ./nginx.conf:/etc/nginx/nginx.conf:ro
              # setup your certbot and letsencrypt config 
              - ./certbot:/var/www/certbot
              - ./letsencrypt:/etc/letsencrypt/live
            restart: always
            depends_on:
              - pictrs
              - lemmy-ui
        

        And try again. Does it work?

        • nameasdOP
          link
          fedilink
          arrow-up
          1
          ·
          2 years ago

          Terminal talk: service “pictrs” refers to undefined network lemmyinternal: invalid compose project

          • Salamander@mander.xyz
            link
            fedilink
            arrow-up
            2
            ·
            2 years ago

            Sorry, I did not realize that these files had not yet been updated with the changes necessary for version 0.17.0, which are described here: https://github.com/LemmyNet/lemmy/blob/main/RELEASES.md#lemmy-v0170-release-2023-01-31

            I could not find an example of the files configured correctly in github, so I have uploaded some example files. You get them this way:

            wget https://raw.githubusercontent.com/Kradyz/Tutorials/main/files/lemmy.hjson
            wget https://raw.githubusercontent.com/Kradyz/Tutorials/main/files/docker-compose.yml
            

            Then modify the variables inside {}, like the domain name and the database password.

            • nameasdOP
              link
              fedilink
              arrow-up
              2
              ·
              2 years ago

              Oh maaan, Kradiz that you! BIG THX FOR YOUR GUIDE ON YOUTUBE. I will write soon if I succeeded.

                • nameasdOP
                  link
                  fedilink
                  arrow-up
                  1
                  ·
                  2 years ago

                  Docker-compose been finished without errors, all good, but site doesnt work. I think there is some kind of error around the nginx installation on my 7 and 8 steps.

                  only http://ww.uebishe.com/ (straight HTTP and WWW) respond me:

                  • Salamander@mander.xyz
                    link
                    fedilink
                    arrow-up
                    1
                    ·
                    2 years ago

                    Or, I have made an nginx config file that will work for you

                    If you already created an nginx configuration file, move it somewhere else. Then, get the new configuration file to the nginx folder, and then restart the nginx service by running these two commands:

                    sudo wget https://raw.githubusercontent.com/Kradyz/Tutorials/main/files/uebishe.conf /etc/nginx/sites-enabled/uebishe.conf
                    
                    sudo systemctl restart nginx
                    
    • nameasdOP
      link
      fedilink
      arrow-up
      1
      ·
      2 years ago

      Hello again.

      I managed to run version 0.17 only by installing 0.16.4 (with your guide) and then upgrading to 0.17.0 (according to the official guide).

      I think that a new guide is not required. It just seems that initially there was a problem in the distribution of the new Lemmy itself, says Dessalines https://github.com/LemmyNet/lemmy/issues/2700

      For future visitors of this topic who have encountered errors during the update -> if you have an error after the update, you may not have correctly rewritten the lines in the lemmy-ui Block. They must contain 2 words LEMMY: LEMMY_UI_LEMMY_***********

      PS: Im running to start dev new UI :)