−25%

yıllık Windows ödemesinde, 31 Ekim'e kadar. Paketlere git

EQVPS

Mastodon için VPS: kendi küçük sunucunuz

VPS'te küçük bir Mastodon sunucusu barındırın: dürüst RAM ve disk hesabı, Docker kurulumu, SMTP aktarıcısıyla e-posta ve diskin dolmaması için medya temizliği.

Kendi sosyal hesabınıza sahip olmak güzel bir fikir, ta ki hesabın başkasının sunucusunda, onun kurallarına ve çalışma süresine bağlı yaşadığını fark edene kadar. Kendi Mastodon sunucunuz bunu çözer: kullanıcı adınız @you@your-domain olur ve onu sizden başka kimse kapatamaz. İşin püf noktası şu: Mastodon küçük bir uygulama değil. Neye girdiğinizi bilmekte fayda var.

Kimler için

Bundan büyüğü için moderasyon sorumlulukları, kötüye kullanım şikâyetleri ve gerçek altyapısı olan bir servis işletiyorsunuz demektir. O başka bir konu.

Gerçekte neye ihtiyaç duyar

Mastodon aynı anda birkaç süreç çalıştırır: Rails web uygulaması, arka planda Sidekiq işçileri, bir akış sunucusu, PostgreSQL ve Redis. Federasyon sayesinde sunucunuz siz uyurken bile diğer sunuculardan gönderi ve medya çekmeye devam eder.

SunucuPlan
Tek kullanıcı, az takipSmall-IP — 2 vCPU, 4 GB, $16/ay
Küçük topluluk, aktif federasyonMedium-IP — 4 vCPU, 6 GB, $20/ay

4 GB çalışır ama sıkışıktır; takip ettiğiniz popüler bir gönderi binlerce yanıt aldığında Sidekiq kuyrukları birikir. 6 GB nefes alacak alan bırakır. Diğer kısıt disktir — aşağıdaki medya bölümüne bakın.

Ayrıca bir alan adına ve özel bir IP'ye ihtiyacınız var: diğer sunucular sizinkine 443 portundan teslim eder.

Docker ile kurulum

Resmî depo bir docker-compose.yml içerir. Docker kurulu temiz bir Ubuntu 24.04 sunucusunda:

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

Kurulum görevi alan adınızı, veritabanı ve Redis ayarlarını (varsayılanlar compose dosyasıyla uyumlu), e-posta ayarlarını ve ilk yönetici hesabını sorar. Hepsini .env.production dosyasına yazar. Seçtiğiniz etiketin sürüm notlarını okuyun — adımlar ana sürümler arasında zaman zaman değişir.

Mastodon, dist/nginx.conf içinde bir nginx şablonu sunar. Onu /etc/nginx/sites-available/ dizinine kopyalayın, alan adını değiştirin ve certbot ile bir sertifika alın. Reverse proxy ve alan adı rehberlerimiz ikisini de anlatıyor.

E-posta: bir aktarıcı kullanın

Mastodon onay ve şifre sıfırlama e-postaları gönderir. Sunucularımızda 25 ve 465 portları kapalıdır, bu yüzden Mastodon'u 587 portu üzerinden harici bir işlemsel e-posta sağlayıcısına yönlendirin:

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

Açıkçası bir aktarıcıyı zaten isterdiniz. Yepyeni bir sunucu IP'sinden giden e-postalar genellikle spam'e düşer; aktarıcının sizin henüz sahip olmadığınız bir itibarı vardır.

Medya: disk yiyici

Sunucunuzun gördüğü hesaplardaki her görsel ve video yerel olarak önbelleğe alınır. Hareketli bir sunucuda bu haftada gigabaytlar demektir. Eski uzak medyayı düzenli olarak temizleyin:

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

Bunları günlük bir cron görevine koyun. Sunucunuz büyürse, .env.production içindeki S3_* ayarlarıyla medyayı S3 uyumlu nesne depolamaya taşıyın — böylece VPS diskinde yalnızca veritabanı kalır.

Bakım

Ekip sohbeti için daha hafif bir şey mi istiyorsunuz? Bir Matrix sunucusu daha uygun olabilir.

Dağıtmaya hazır mısınız? Kripto ile ödeyin, KYC yok — yaklaşık bir dakikada çevrimiçi.

Dağıt →

SSS

Bir Mastodon sunucusu ne kadar RAM ister?

Tek kullanıcılı veya küçük bir sunucu için gerçekçi minimum 4 GB, rahat olan ise 6 GB. Mastodon aynı anda bir web süreci, Sidekiq işçileri, PostgreSQL ve Redis çalıştırır; federasyon da kimse gönderi paylaşmasa bile Sidekiq'i meşgul eder.

Mastodon neden özel IP ister?

Diğer sunucular gönderileri sizinkine 443 portu üzerinden HTTPS ile teslim eder ve insanlar sunucunuzu tarayıcıda açar. Bu, kendi IP'nizde gelen 443 trafiği gerektirir; NAT planlarında bu yok.

Mastodon'dan nasıl e-posta gönderirim?

Harici bir işlemsel e-posta sağlayıcısını 587 portunda SMTP ile kullanın. Sunucularımızda 25 ve 465 portları kapalıdır; ayrıca bir aktarıcı, yepyeni bir IP'nin sağlayacağından çok daha iyi teslim oranı sunar.

Diskim neden bu kadar hızlı doluyor?

Sunucunuz gördüğü her hesabın medyasını önbelleğe alır. 'tootctl media remove --days 7' komutunu düzenli çalıştırın ya da medyayı S3 uyumlu nesne depolamaya taşıyın.

Alan adını sonradan değiştirebilir miyim?

Hayır. Alan adınız fediverse genelinde her hesabın kimliğinin parçasıdır. İlk hesabı oluşturmadan önce dikkatle seçin.

Yorumlar

Henüz yorum yok. İlk olun.

Bir yorum bırakın

Yorumlar görünmeden önce denetlenir.