−25%

kwa Windows ya mwaka, hadi 31 Okt. Tazama mipango

EQVPS
Anza

VPS kwa Mastodon: instance yako ndogo mwenyewe

Weka instance ndogo ya Mastodon kwenye VPS: makadirio ya kweli ya RAM na diski, kusakinisha kwa Docker, barua pepe kupitia SMTP relay, na kusafisha media ili diski isijae.

Kumiliki akaunti yako ya kijamii ni wazo zuri, hadi unapotambua kwamba akaunti hiyo inaishi kwenye seva ya mtu mwingine, chini ya sheria zake na muda wake wa kufanya kazi. Instance yako mwenyewe ya Mastodon inatatua hilo: handle yako ni @you@your-domain, na hakuna anayeweza kuizima isipokuwa wewe. Changamoto ni kwamba Mastodon si programu ndogo. Ni vizuri kujua unachojiingiza.

Ni kwa ajili ya nani

Kwa chochote kikubwa zaidi, unaendesha huduma yenye majukumu ya kusimamia maudhui, ripoti za matumizi mabaya na miundombinu halisi. Hayo ni mazungumzo mengine.

Inachohitaji kweli

Mastodon huendesha process kadhaa kwa wakati mmoja: programu ya wavuti ya Rails, workers za Sidekiq za nyuma, seva ya streaming, PostgreSQL na Redis. Kwa sababu ya federation, seva yako huendelea kuchukua post na media kutoka seva nyingine hata ukiwa umelala.

InstanceMpango
Mtumiaji mmoja, anafuata wachacheSmall-IP — 2 vCPU, 4 GB, $16/mwezi
Jumuiya ndogo, federation haiMedium-IP — 4 vCPU, 6 GB, $20/mwezi

4 GB zinafanya kazi lakini kwa kubana; foleni za Sidekiq hujaa pale post maarufu unayoifuata inapopata maelfu ya majibu. 6 GB zinakupa nafasi ya kupumua. Kikwazo kingine ni diski — tazama sehemu ya media hapa chini.

Unahitaji pia domain na IP maalum: seva nyingine huwasilisha kwenye seva yako kupitia port 443.

Kusakinisha kwa Docker

Repository rasmi ina docker-compose.yml. Kwenye seva mpya ya Ubuntu 24.04 yenye Docker iliyosakinishwa:

git clone https://github.com/mastodon/mastodon.git
cd mastodon
git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)
touch .env.production
docker compose run --rm -v $(pwd)/.env.production:/opt/mastodon/.env.production \
  web bundle exec rake mastodon:setup
docker compose up -d

Kazi ya kuandaa inauliza domain yako, mipangilio ya database na Redis (chaguo-msingi zinalingana na faili la compose), mipangilio ya barua pepe na akaunti ya kwanza ya msimamizi. Inaandika kila kitu kwenye .env.production. Soma maelezo ya toleo la tag uliyochagua — hatua hubadilika mara kwa mara kati ya matoleo makuu.

Mastodon inakuja na kiolezo cha nginx kwenye dist/nginx.conf. Kinakili kwenye /etc/nginx/sites-available/, badilisha domain na upate cheti kwa certbot. Miongozo yetu ya reverse proxy na domain inashughulikia yote mawili.

Barua pepe: tumia relay

Mastodon hutuma barua pepe za uthibitisho na za kubadilisha nenosiri. Port 25 na 465 zimefungwa kwenye seva zetu, kwa hiyo elekeza Mastodon kwa mtoa huduma wa nje wa barua pepe za miamala kupitia port 587:

SMTP_SERVER=smtp.your-provider.example
SMTP_PORT=587
SMTP_LOGIN=apikey
SMTP_PASSWORD=your-smtp-password
SMTP_FROM_ADDRESS=notifications@your-domain.example

Kusema kweli, ungetaka relay vyovyote vile. Barua kutoka IP mpya kabisa ya seva mara nyingi huishia kwenye spam; relay ina sifa ambayo wewe bado huna.

Media: mlaji wa diski

Kila picha na video kutoka akaunti ambazo seva yako inaziona huhifadhiwa kwenye cache ndani ya seva. Kwenye instance yenye shughuli nyingi, hizo ni gigabytes kila wiki. Safisha media za zamani za mbali kwa ratiba:

docker compose exec web tootctl media remove --days 7
docker compose exec web tootctl preview_cards remove --days 30

Ziweke kwenye kazi ya cron ya kila siku. Instance yako ikikua, hamisha media kwenye hifadhi ya object inayoendana na S3 kwa kutumia mipangilio ya S3_* ndani ya .env.production — hapo diski ya VPS itabeba database pekee.

Matunzo

Unataka kitu chepesi zaidi kwa gumzo la timu? Seva ya Matrix inaweza kufaa zaidi.

Uko tayari kusambaza? Lipa kwa crypto, bila KYC — hai kwa takriban dakika moja.

Sambaza sasa →

Maswali

Instance ya Mastodon inahitaji RAM kiasi gani?

Kwa instance ya mtumiaji mmoja au ndogo, 4 GB ndio kiwango cha chini cha kweli na 6 GB ni raha. Mastodon huendesha kwa wakati mmoja process ya wavuti, workers za Sidekiq, PostgreSQL na Redis, na federation huifanya Sidekiq iwe na shughuli hata pasipo mtu anayeandika.

Kwa nini Mastodon inahitaji IP maalum?

Seva nyingine huwasilisha post kwenye seva yako kupitia HTTPS kwenye port 443, na watu hufungua instance yako kwenye browser. Hilo linahitaji trafiki inayoingia kwenye port 443 ya IP yako mwenyewe, kitu ambacho mipango ya NAT haina.

Natumaje barua pepe kutoka Mastodon?

Tumia mtoa huduma wa nje wa barua pepe za miamala kupitia SMTP kwenye port 587. Port 25 na 465 zimefungwa kwenye seva zetu, na relay hata hivyo huwasilisha barua vizuri zaidi kuliko IP mpya.

Kwa nini diski yangu inajaa haraka hivi?

Seva yako huhifadhi kwenye cache media za kila akaunti inayoiona. Endesha 'tootctl media remove --days 7' kwa ratiba, au hamisha media kwenye hifadhi ya object inayoendana na S3.

Naweza kubadilisha domain baadaye?

Hapana. Domain ni sehemu ya utambulisho wa kila akaunti kote kwenye fediverse. Ichague kwa makini kabla ya kuunda akaunti ya kwanza.

Maoni

Bado hakuna maoni. Kuwa wa kwanza.

Acha maoni

Maoni yanakaguliwa kabla ya kuonekana.