Closed ProjectMakerGeorgia closed 2 years ago
You'll need to purchase a domain from a domain registrar, and then add an A Record in the domain registrar with the IP Address of the network that you're hosting lemmy on. This is the same process for any hosted server software.
If you're hosting lemmy on your own network, you'll need to forward a port in your router so external traffic can access your internal lemmy host. If you're hosting lemmy on a VPS, then your VPS will have documentation about how to find the right IP address for adding the A Record.
Importantly, none of this configuration is specific to lemmy. You would need to follow these same steps if you wanted to host any other web application.
я не понимаю вас . как добавить домен скажите как добавить вы ничего сказали нащот добавления домена . каком файле, где написать домена далее что сделать после сохранения этого файла . да домен направлено правильным оброзом на IP
пользуюсь VPS сервером .
there's a hostname
field in the lemmy.hjson
file that tells lemmy which domain it exists at, is that what you're looking for?
да да нашот таво что в docker-compose тоже надо писать домен сайта что об этом скажите?
hostname: "mydomen.ru"
bind: "47.80.40.10"
port: 8536
pictrs_url: "http://pictrs:8080" database: {
database: "lemmy"
# username to connect to postgres
user: "lemmy"
# password to connect to postgres
password: "password"
# host where postgres is running
host: "postgres"
# port where postgres can be accessed
port: 5432
# maximum number of active sql connections
pool_size: 5
настроить так и всё будет работать ? если имя домена : mydomen.ru IP где направлено А запись домена : 47.80.40.10
ничего не изменит в docker-compose.yml файле ?
lemmy: image: dessalines/lemmy:0.14.3 ports:
pictrs
lemmy-ui: image: dessalines/lemmy-ui:0.14.3 ports:
lemmy
pictrs: image: asonix/pictrs:0.3.0-beta.11 ports:
это код из docker-compose.yml здесь что нибудь изменить ?
Nothing from the docker-compose.yml file needs to change, that should all work. I think for bind
you should use 0.0.0.0
since that will listen for all incoming connections rather than listening on the public IP.
Further, it seem you'll need to set up nginx
in front of the docker services, and get a TLS certificate for your domain. The official documentation has information about this: https://join-lemmy.org/docs/en/administration/install_docker.html
я буду дать вам пароля маего VPS сервера можете мне установить там lemmy я уже 10 день пытаюсь и не смог
I think it is important that you learn to install and manage lemmy yourself if you want to host it. Knowing how your system works will help you when issues happen in the future.
я хачу сначало установить чтобы патом пасмотреть эта есть то что мне нужно или нет . хачу тестоировать сделать там несколько чтота , если эта будет то что мне нужно я научусь
дайте мне вашего эл-почта я отправлю вам манго ип пароль и имя пользователя . я уже 10 день пытаюсь установить и ничего не вышол
просто не нашел нормальную инструкцию. что где как сделать . пожалуйста паможеш ?
Что именно вы понимаете под тем чтобы "добавить домен"? Куда его добавить? DNS-записи настроить? Веб-сервер? Можете понятнее сформулировать свой вопрос?
Что именно вы понимаете под тем чтобы "добавить домен"? Куда его добавить? DNS-записи настроить? Веб-сервер? Можете понятнее сформулировать свой вопрос? DNS-записи настроил там где купил домен . Веб-сервер не знаю как его настроит . я устанавливаю lemmy с помощью docker и после этих команд mkdir -p volumes/pictrs sudo chown -R 991:991 volumes/pictrs
не знаю что сделать . харашо я буду открыт docker-compose.yml и там буду написать мой домен этом строке - LEMMY_EXTERNAL_HOST=your-domain.ru и патом набиру команду docker-compose up -d
после этого на домене ничего не открывается , но каманда curl localhost :1235 показывает что на локале работает он даёт мне html кода .
после этого в инструкциях написано что нужно установить nginx из официального страницы устанавливаю на главном директорие и набираю команды по инструкции домен начинает работать но там написано только то что я установил там nginx и на curl localhost :1235 этом команде уже ни html lemmy а html nginx страницы ...
если скажем каротка я хочу установить lemmy на домене но не знаю как . дайте мне пожалусто инструкцию как всё этого сделать
Нужно настроить nginx чтобы он работал как обратный прокси. Пример конфигурации: https://github.com/LemmyNet/lemmy-ansible/blob/main/templates/nginx.conf
В документации об этом написано.
Более простой пример конфигурации:
server{
server_name your_domain.com; # <- нужно прописать здесь свой домен
client_max_body_size 40M;
location / {
proxy_pass http://127.0.0.1:1235;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
Нужно настроить nginx чтобы он работал как обратный прокси. Пример конфигурации: https://github.com/LemmyNet/lemmy-ansible/blob/main/templates/nginx.conf
В документации об этом написано.
Более простой пример конфигурации:
server{ server_name your_domain.com; # <- нужно прописать здесь свой домен client_max_body_size 40M; location / { proxy_pass http://127.0.0.1:1235; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; } }
остальное я всё правильно сделаю ? я попытаюсь сейчас снова
Если curl localhost:1235
показывает html-код, да, сам lemmy настроен правильно
Если
curl localhost:1235
показывает html-код, да, сам lemmy настроен правильно
но после установки nginx этот код пропадает
Хорошо. Если установить nginx и зайти на домен с браузера, что покажет браузер? Там будет страница "welcome to nginx"?
Хорошо. Если установить nginx и зайти на домен с браузера, что покажет браузер? Там будет страница "welcome to nginx"?
да
Значит надо настроить как я написал. Инструкций о том, как это сделать, полно, например https://routerus.com/nginx-reverse-proxy/
proxy_pass http://127.0.0.1:1235; и этого 127.0.0.1 менять на мои IP ? после настроит надо нибудь команды чтобы проект снова пересобрать ?
Нет и нет
server{ server_name your_domain.com; # <- нужно прописать здесь свой домен client_max_body_size 40M; location / { proxy_pass http://127.0.0.1:1235; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; } }
всё равно не работает снова этот надпись :
Welcome to nginx! If you see this page, the nginx web server is successfully installed and working. Further configuration is required.
For online documentation and support please refer to nginx.org. Commercial support is available at nginx.com.
Thank you for using nginx.
По какому пути этот конфиг находится или в какой файл вы его дописали?
server{ server_name your_domain.com; # <- нужно прописать здесь свой домен client_max_body_size 40M; location / { proxy_pass http://127.0.0.1:1235; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; } }
lemmy/nginx.conf - здесь написал что вы сказали . больше ничего не сделано .
Ну написали, а nginx перезапустили?..
да конечно
Ну написали, а nginx перезапустили?..
до этого файла не надо писать путь в docker-compose .yml файле ?
Так, стоп. nginx.conf в папке самого lemmy что ли?
The documentation says the nginx configuration should be located here: /etc/nginx/sites-enabled/lemmy.conf
. It may be in a different location depending on your operating system.
Так, стоп. nginx.conf в папке самого lemmy что ли?
да
Нет, это надо написать в, например, /etc/nginx/sites-available/lemmy.conf, потом сделать симлинк командой ln -s /etc/nginx/sites-available/lemmy.conf /etc/nginx/sites-enabled/lemmy.conf
, потом перезапустить nginx
Нет, это надо написать в, например, /etc/nginx/sites-available/lemmy.conf, потом сделать симлинк командой
ln -s /etc/nginx/sites-available/lemmy.conf /etc/nginx/sites-enabled/lemmy.conf
, потом перезапустить nginx
я перенёс его с помощью этого команду как в инструкциях написано sudo mv nginx.conf /etc/nginx/sites-enabled/lemmy.conf . но не изменилось и после этого снова перезагрузил nginx
Домен прописали во второй строке?
Домен прописали во второй строке? да конечно
After you moved the file, how are you testing it? Are you running curl 'localhost:80'
or curl localhost:443
? What happens if you try curl -H 'Host: your_domain.com' localhost:80
¯\_(ツ)_/¯
@asonix I told him to test it with a browser and apparently his nginx doesn't pick up the Host header for some reason? That's the only reason I could think of why it would serve that placeholder page.
¯_(ツ)_/¯
/etc/nginx/sites-available это место сейчас посмотрел с помощью ls и там default и больше ничего
а в /etc/nginx/sites-enabled?
conf.d
fastcgi_params
koi-win
modules-available
nginx.conf
scgi_params
sites-enabled
uwsgi_params
fastcgi.conf
koi-utf
mime.types
modules-enabled
proxy_params
sites-available
snippets
win-utf
/etc/nginx - здесь всё эта
rootServer@topix:/etc/nginx/sites-available$ ls
ответ : default
урааа заработал
:tada:
Next steps would be setting up https
with something like Let's Encrypt
Here's an article about it: https://www.nginx.com/blog/using-free-ssltls-certificates-from-lets-encrypt-with-nginx/
🎉
Next steps would be setting up
https
with something like Let's Encrypt Here's an article about it: https://www.nginx.com/blog/using-free-ssltls-certificates-from-lets-encrypt-with-nginx/
сейчас на сайте ничего не работает ни регистрация и ваше ничего. после установки SSL сайт будет нормально работат ?
it seems like things aren't working properly with the websocket endpoint. It is possible that SSL will fix this, although I am not certain.
Can you share some logs from lemmy? sudo docker-compose logs -f lemmy
it seems like things aren't working properly with the websocket endpoint. It is possible that SSL will fix this, although I am not certain.
Can you share some logs from lemmy?
sudo docker-compose logs -f lemmy
/etc/nginx/sites-enabled/lemmy.conf - что добавить этом файле ?
использовал эти 3 команды - $ apt-get update $ sudo apt-get install certbot $ apt-get install python3-certbot-nginx
где можно добавить это ? server { listen 80 default_server; listen [::]:80 default_server; root /var/www/html; server_name topix.ge ; }
так выглядит сейчас этот файл - /etc/nginx/sites-enabled/lemmy.conf
server{ server_name topix.ge; client_max_body_size 40M; location / { proxy_pass http://127.0.0.1:1235; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; } }
Говорят, гуглить такие вопросы иногда помогает. Но это не точно. https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-20-04-ru
где нибудь есть инструкция насчет добавления домена ?