İçeriğe geç
Gitupcms
Esc
↑↓gezin↵aç⌘Jönizle
Bu sayfada

Kendiniz çalıştırın

Tek bir Node süreci ve tek bir SQLite dosyası.

Gitupcms, SQLite veritabanı (better-sqlite3) kullanan bir Astro SSR uygulamasıdır (@astrojs/node, standalone). Node 22+ ve pnpm gerektirir.

  • cms/
    • src/
      • lib/ (algılama, GitHub, çalışma alanları, medya, SEO, yorumlar)
      • components/ (React adaları ve Bejamas UI)
      • pages/ (Astro sayfaları ve API rotaları)
    • kit/i18n/ (sitelere kopyalanan dil kiti)
    • widget/ (yorum gömme bileşeni)
    • .env.example
  • docs/ (bu site)

Yerel

Create a GitHub OAuth app

Callback URL: http://localhost:4321/api/auth/callback/github.

Configure

cd cms
cp .env.example .env   # GitHub OAuth app + BETTER_AUTH_SECRET

Run

pnpm install
pnpm dev               # http://localhost:4321

SQLite tabloları açılışta oluşturulur.

Production derlemesi

pnpm install --frozen-lockfile
pnpm build                       # also builds the comments widget
node ./dist/server/entry.mjs     # HOST and PORT from the environment

Docker

cms/ içinde bir Dockerfile ve bir docker-compose.yml bulunur. Bu sayede CMS, Docker kurulu her makinede aynı şekilde çalışır; ana makinede Node, pnpm veya derleme araçlarına gerek kalmaz.

cd cms
cp .env.example .env               # GitHub OAuth app + BETTER_AUTH_SECRET
docker compose up -d --build       # http://localhost:4321
  • SQLite veritabanı ve önizleme checkout’ları gitupcms-data volume’unda (container içinde /data) tutulur. Güncellemek için git pull ve ardından docker compose up -d --build çalıştırmanız yeterlidir; verileriniz korunur.
  • Port 127.0.0.1 adresine bağlanır. Sunucuda HTTPS için önüne Caddy veya başka bir proxy koyun; Sunucu sayfasında anlatıldığı gibi.
  • PREVIEW_RUNNER=1 ayarlandığında önizlemeler CMS container’ının içinde, aynı kullanıcıyla çalışır. Bunu yalnızca güvendiğiniz siteler için açın. PREVIEW_DOCKER değişkenini ayarlamayın, çünkü container’ın içinde Docker yoktur.

Tüm değişkenler için Ortam sayfasına, eksiksiz bir Linux kurulumu için Sunucu sayfasına bakın.

Bu sayfa yardımcı oldu mu?