Vissza az eszközökhöz

Tartalom kiadása

Postiz

A Postiz nyílt forrású közösségimédia-ütemező: egy naptárban tartja a csatornákat, saját szerveren Docker alatt is fut, és API-t ad az automatizálásnak.

3 perc olvasás

A Postiz nyílt forrású közösségimédia-ütemező: egy helyen tartja nyilván a csatlakoztatott fiókokat, és a posztokat naptárra teszi. A szoftver saját szerveren, Docker alatt is futtatható, és a projekt leírása szerint a saját üzemeltetésű változat tudásban nem marad el a hosztolttól. A licence AGPL-3.0.

A felület három dolgot tesz együtt: a csatornalista, a szerkesztő és a naptár ugyanabban a munkamenetben van. Egy posztot egyszer írunk meg, majd csatornánként finomítható, és a szerkesztő előnézete mutatja, hogyan jelenik meg az adott platformon. Nálunk a Postiz a saját szerverünkön fut, saját PostgreSQL adatbázissal, és az ütemezett posztok rajta keresztül mennek ki.

Csatornák és platformok

A csatorna egy csatlakoztatott fiók: egy X profil, egy Discord szerver, egy LinkedIn oldal. A dokumentáció 34 platformot sorol fel, és ezek nem egyformán viselkednek.

  • Több csatlakozási mód létezik: OAuth átirányítás, saját kulcs megadása a Postiz felületén, platformon belüli párbeszédablak, illetve böngészőkiegészítő, amely a meglévő munkamenetet használja.
  • A poszt további részei nem ugyanazt jelentik mindenhol: szállá alakulnak, a saját poszt alá kerülő kommentté válnak, vagy elmaradnak.
  • A médiaszabályok platformonként eltérnek, ezért a szerkesztő már mentés előtt blokkolja a szabályt sértő posztot.
  • Fiók szintű analitikát a dokumentáció szerint csak tíz platform ad vissza.
  • Néhány platform csak a nyilvános API-n keresztül érhető el, a felületen nincs hozzá csatlakozási gomb.

Üzemeltetés Docker Compose-szal

A hivatalos önálló üzemeltetési út a Docker Compose. A projekt külön Compose tárat tart fenn, és a fájlt onnan érdemes húzni, mert a szolgáltatások és a környezeti változók kiadásról kiadásra változnak.

A stack a fő alkalmazás mellett PostgreSQL adatbázist, Redis-t és a hátteres munkafolyamatokhoz Temporal-t futtat. A dokumentáció a Temporal stacket a v2.12.0-tól teszi kötelezővé, és a frissítéshez külön migrációs útmutató tartozik.

  • Minden beállítás környezeti változóban van, és a módosítás újraindítást igényel.
  • A kötelező mag változók közé tartozik az adatbázis- és a Redis-kapcsolati sztring, a JWT titok, valamint a böngésző és a belső hívások URL-jei.
  • Az adat kötetben marad meg: az adatbázis fájljai, a Redis állapota, a konfiguráció és a feltöltött média külön kötetben.
  • Mentéshez az adatbázist pg_dump-pal érdemes kiírni, és a visszaállítás útját is tesztelni.
  • A beállítások teljes listáját a projekt példa környezeti fájlja és a konfigurációs referencia tartja karban.

Automatizálás és API

A Postiz saját HTTP API-t ad, és az ütemezett posztokat ugyanaz a mechanizmus viszi ki, mint a felületről indítottakat. A hitelesítés API kulccsal vagy OAuth2 tokennel történik.

  • Az API a csatornát integrációnak nevezi, a felület viszont csatornáról beszél; ugyanarról a dologról van szó.
  • A poszt létrehozására óránkénti limit vonatkozik, amelynek alapértelmezett értéke 90, a szállított Compose fájl viszont ennél alacsonyabbra, 30-ra állítja. Az API_LIMIT változóval emelhető.
  • A limit egyetlen végpontra érvényes, nem az egész API-ra, és instance szintű, nem csomagfüggő.
  • Egy kérésben több poszt is ütemezhető, ezért nagyobb mennyiséget érdemes kötegelve leadni.
  • Az n8n-hez külön community node létezik, a nyilvános API mellé pedig Node.js SDK.

Nálunk ez a rész az n8n felé kapcsolódik: az automatizálásaink a Postiz API-ján keresztül tesznek posztokat a naptárra, a Docker stack pedig külön Compose fájlként üzemel. Az adatbázis külön konténerben fut, saját kötettel, ahogy a PostgreSQL oldalunkon leírjuk.

Amire figyelni kell

  • Saját üzemeltetésnél a platformok többségéhez a futtatónak kell fejlesztői alkalmazást regisztrálnia és a kulcsokat beállítania. A hosztolt változatban ez minden platformra kész.
  • A nagy platformok jóváhagyási folyamata hosszú lehet, és a jogosultsági modell változásakor megismétlődik.
  • A hozzáférési tokenek lejárnak; a felület jelöléssel mutatja az újracsatlakozást igénylő csatornát, a hibás posztot pedig hibaüzenettel.
  • Az AGPL-3.0 hálózati copyleft: ha a módosított változatot szolgáltatásként nyújtjuk másoknak, a módosított forrást elérhetővé kell tenni. Változatlan, saját célú üzemeltetésnél ez nem kötelezettség.
  • Az üzemeltetés nem csak a Postiz konténert jelenti: adatbázis, Redis és Temporal is a stack része.

Tovább olvasás

A CyberElectrónál a Postiz a saját szerverünkön futó ütemező: az ütemezett posztok rajta keresztül mennek ki, és az n8n automatizálásaink is ide küldik a tartalmat.

Címkék
  • ütemezés
  • közösségi média
  • önstruktúra
  • API
  • Docker