this post was submitted on 06 Jul 2023
5 points (72.7% liked)

Selfhosted

40710 readers
557 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

I'm attempting to get a Lemmy server running on Debian 11 using this documentation:

https://join-lemmy.org/docs/administration/from_scratch.html

The following command fails as a result of some minor version incompatibilities: cargo install lemmy_server --target-dir /usr/bin/ --locked --features embed-pictrs

Removing --locked seems to work, but it fails compiling later in the process with the following output: Compiling diesel-async v0.1.1 error[E0405]: cannot find trait RowGatWorkaround in module diesel::row --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/diesel-async-0.1.1/src/pg/row.rs:16:23 | 16 | impl<'a> diesel::row::RowGatWorkaround<'a, diesel::pg::Pg> for PgRow { | ^^^^^^^^^^^^^^^^ not found in diesel::row

error[E0405]: cannot find trait RowGatWorkaround in module diesel::row --> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/diesel-async-0.1.1/src/pg/row.rs:30:39 | 30 | ...diesel::row::RowGatWorkaround<'b, diesel::pg::Pg>>::Field> | ^^^^^^^^^^^^^^^^ not found in diesel::row

For more information about this error, try rustc --explain E0405. error: could not compile diesel-async (lib) due to 2 previous errors error: failed to compile lemmy_server v0.17.4, intermediate artifacts can be found at /usr/bin/

Does anyone know how I can remedy this?

top 7 comments
sorted by: hot top controversial new old
[–] [email protected] 4 points 1 year ago (3 children)

Instead of official lemmy documentation, I recommend https://github.com/ubergeek77/Lemmy-Easy-Deploy

I use it myself and it was too damn easy. Just follow the instructions on the GitHub and you'll be up and running in less than a minute

[–] [email protected] 3 points 1 year ago

I've been running around Lemmy trying to get new people to use this. This script is awesome and saved me so much time.

[–] TrinityTek 2 points 1 year ago

I gave that a try but actually ran into a problem with that too. I setup Mastodon on the same server earlier and was planning to use Nginx server blocks to send traffic for mastodon.fdr8.us and lemmy.fdr8.us to the appropriate destination, but the script failed when it tried to bind all traffic on port 443 and Mastodon is already listening on port 443. I had hoped for both to listen on port 443. This is actually somewhat unfamiliar territory for me as usually I am working with Apache and virtual hosts, but I'm hopeful I can make it work. I am very familiar with Apache virtual hosts and have worked with them extensively. I hope I wasn't crazy to assume I could run Lemmy and Mastodon on the same server on Nginx in a similar fashion.

[–] TrinityTek 1 points 1 year ago (2 children)

Thanks for the advice. I'm old school and never use Docker, but maybe it's time I get over that. I'm actually out of my element anyway in that I do a lot of self-hosting but up to this point it has almost all used Apache and MySQL rather than Nginx and Postgres. Hopefully someone will come along with a solution for the diesel-async compiling error while I'm at work for the next few hours, but if not I'll give your suggestion a shot this evening.

[–] [email protected] 2 points 1 year ago

You'll have to do some reading, but here's some (almost) turnkey repos for all the pieces you need to host Lemmy (and other things) in docker.

I use Traefik instead of nginx to do load balancing / edge routing / reverse proxy / SSL termination (and automatic generation via LetsEncrypt - it's proven to be bulletproof in a good few production setups.

[–] [email protected] 2 points 1 year ago

Oh wow that's amazing! Docker really is amazing for hosting stuff nowadays though!

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago)

I think it's easier to clone the repo, checkout a release tag (say 0.18.0), and compile from source directly than installing from cargo.

load more comments
view more: next ›