Przewodnik wdrożeniowy Frankfurt nad Menem, Niemcy
Bot Discorda utrzymuje otwarte połączenie zamiast odpowiadać na żądania HTTP, więc na Nodion działa jako proces worker bez portu. Dodaj jedną linię w Procfile i jeden proces, trzymaj token w zmiennej oznaczonej jako sekret, a bot będzie działał przez całą dobę we Frankfurcie nad Menem. Boty Telegrama korzystające z long pollingu działają tak samo.
worker, bez portuworker: python bot.py lub worker: node bot.jsclient.login(process.env.DISCORD_TOKEN). bot.py import os
import discord
intents = discord.Intents.default()
client = discord.Client(intents=intents)
@client.event
async def on_ready():
print(f"Logged in as {client.user}")
client.run(os.environ["DISCORD_TOKEN"]) requirements.txt z discord.py. Bot w Node.js używa worker: node bot.js i discord.js w package.json, a lockfile musi być w repozytorium; dla bota w TypeScripcie wymagającego buildu prostszym rozwiązaniem jest Dockerfile. Pomiń linię web:: bot nie ma serwera WWW. Procfile worker: python bot.py DISCORD_TOKEN i oznacz ją jako sekret: po zapisaniu wartości nie da się już odczytać. worker bez portu i z pustym poleceniem, aby uruchamiał wpis z Procfile o tej nazwie. Następnie ustaw web na 0 instancji albo usuń ten proces: bot nie odpowie na health check HTTP, którego potrzebuje web. SIGTERM. Twój bot musi przy starcie poprawnie nawiązać połączenie, a przez krótką chwilę obie kopie mogą być online. Przy podłączonym lokalnym wolumenie nie ma codziennej wymiany, a przy wdrożeniu stara instancja zatrzymuje się, zanim wystartuje nowa.web, nasłuchują na PORT i odpowiadają na ścieżce health checku kodem 2xx lub 3xx.DATABASE_URL, REDIS_URL lub CLICKHOUSE_URL. release: w Procfile uruchamia się przy każdym nowym buildzie. Aplikacje z Dockerfile, a także ponowne wdrożenia i rollbacki do wcześniejszego obrazu, korzystają z polecenia release ustawionego w samej aplikacji, które ma też pierwszeństwo przed linią z Procfile. W przypadku stron statycznych krok release działa w obrazie zawierającym tylko zbudowane pliki. Nie. Proces działa, dopóki nie przeskalujesz go do 0 instancji albo nie usuniesz. Mniej więcej raz dziennie jest zastępowany nową instancją (chyba że ma podłączony lokalny wolumen), więc zadbaj o to, by bot przy starcie ponownie nawiązywał połączenie.
Tak. Bot z long pollingiem, na przykład python-telegram-bot z run_polling(), działa jako worker dokładnie tak jak bot Discorda, z tokenem w zmiennej oznaczonej jako sekret. Bot w trybie webhook jest natomiast zwykłą aplikacją webową.
Bot działał jako proces web, który czeka na odpowiedź HTTP, a ta nigdy nie przychodzi; po 10 minutach release zostaje przerwany. Dodaj proces worker, ustaw web na 0 instancji i wdróż ponownie.
W regionie EU Central we Frankfurcie nad Menem (Niemcy). Build, rejestr, aplikacja oraz jej bazy danych, wolumeny, buckety, logi i metryki pozostają w tym regionie, a API i warstwa sterowania (control plane) Nodion są hostowane w Niemczech. Nodion GmbH ma siedzibę w Stuttgarcie.
Nodion zapewnia do tego podstawy: Nodion GmbH ma siedzibę w Stuttgarcie (Niemcy), w regionie Frankfurt nad Menem aplikacja, jej bazy danych i wolumeny działają w Niemczech, a umowę powierzenia przetwarzania danych (DPA, art. 28 RODO) zawierasz elektronicznie w dashboardzie. To, czy Twoje wdrożenie spełnia wymogi RODO, zależy też od tego, jak skonfigurujesz aplikację i jak z niej korzystasz.
Instancja aplikacji kosztuje od 1 EUR miesięcznie. Konfiguracja z ramki kosztuje 1 EUR miesięcznie: Aplikacja 1 EUR. Ceny są podane netto, a rozliczenie następuje co do sekundy. Większe rozmiary lub więcej instancji możesz wybrać w dowolnym momencie.
Tak. Każda aplikacja dostaje domyślną nazwę hosta z HTTPS. Własną domenę dodasz w zakładce Domains aplikacji, a certyfikat TLS jest wystawiany i odnawiany automatycznie.
Zyskaj do 15 € środków na start przy rejestracji.
lub przez e-mail
Nowości produktowe, bez spamu. Możesz zrezygnować w każdej chwili.
Zapisano pomyślnie.