docs/quick-start.md

Pika-aloitus: Welleyn minimiasennus

Lyhin tie toimivaan Welley-instanssiin yhdellä Linux-palvelimella, missä pilvessä tahansa tai omalla laitteistollasi. Se käyttää vain niitä lippuja, joita CLI oikeasti vaatii. Kaikki muu pysyy oletusarvoissa.

Saat käyttöösi alustan, RAG-putken, Nginxin, Redisin ja mukana tulevan PostgreSQL-kontin. Let's Encrypt -varmenne myönnetään asennuksen aikana. Hallittua tietokantaa, CDN:ää, telemetriaa tai Slack-integraatiota ei ole. Niitä varten katso AWS EC2- ja DigitalOcean-oppaat.

1. Edellytykset

Linux-palvelin

  • Ubuntu 24.04 LTS (tai vastaava ajantasainen jakelu).
  • Lähtökohdaksi 2 vCPU, 4 Gt RAM-muistia ja 60 Gt levytilaa.
  • Julkinen IPv4-osoite, joka ei vaihdu.
  • Saapuva TCP-liikenne portteihin 80 ja 443 sallittu koko internetistä ja porttiin 22 sinulta. Porttia 80 tarvitaan asennuksen aikana varmenteen todennukseen ja sen jälkeen viikoittaiseen uusimiseen.
  • Tavallinen käyttäjä, jolla on sudo-oikeus. Opas ajaa kaiken tällä käyttäjällä, josta käytetään jäljempänä merkintää <user>.

DNS

Tarvitset kaksi tietuetta, jotka molemmat osoittavat palvelimen julkiseen IP-osoitteeseen:

Tietue Tarkoitus
<domain> itse sivusto
storage.<domain> lataukset ja staattiset tiedostot, koska tässä asennuksessa ei ole CDN:ää

Luo ne ennen aloittamista: CLI tarkistaa, että molemmat nimet osoittavat tähän palvelimeen, ja pysähtyy, jos eivät osoita.

Sähköpostin DNS-tietueet

Osoitteen --smtp-from verkkotunnuksella pitää olla sähköpostin todennustietueet. Ilman niitä Gmail, Outlook ja muut isot palveluntarjoajat hylkäävät usein viestit, jotka lähetät vastaanottajille, jotka eivät ole koskaan saaneet sinulta mitään. Tämä koskee jokaista kutsua ja rekisteröitymisen vahvistusta, eikä viesti päädy edes roskapostiin, vaikka SMTP-palveluntarjoajasi ilmoittaa sen lähteneen.

Tietue Tyyppi Arvo
<mail-domain> TXT SPF, esimerkiksi v=spf1 include:<provider> ~all. Ota tarkka arvo SMTP-palveluntarjoajaltasi.
_dmarc.<mail-domain> TXT DMARC, esimerkiksi v=DMARC1; p=none; rua=mailto:dmarc@<mail-domain>
<selector>._domainkey.<mail-domain> TXT tai CNAME DKIM, jonka SMTP-palveluntarjoajasi luo, kun vahvistat verkkotunnuksen

Verkkotunnuksella voi olla vain yksi SPF-tietue. Jos sillä on jo sellainen, lisää palveluntarjoajasi siihen äläkä luo toista. create varoittaa, jos SPF tai DMARC puuttuu, mutta ei pysähdy. Se ei voi tarkistaa DKIM:ää, koska selector-nimi riippuu palveluntarjoajastasi.

Älä jätä DKIM:ää väliin. Monet palveluntarjoajat, Amazon SES mukaan lukien, käyttävät oletuksena omaa verkkotunnustaan envelope-lähettäjänä. Silloin SPF tarkistaa palveluntarjoajan verkkotunnuksen eikä sinun omaasi, joten sitä ei lasketa DMARC:ssä, ja vain DKIM voi saada DMARC:n läpi. Tarkista DKIM:n tila palveluntarjoajasi hallintapaneelista. Amazon SES:ssä se löytyy kohdasta Verified identities: valitse sieltä <mail-domain> ja sen jälkeen DKIM. Tilan pitää olla Successful. SES Easy DKIM julkaisee kolme CNAME-tietuetta, joiden nimi on muotoa <token>._domainkey.<mail-domain>.

SMTP-tunnukset

Tarvitset palvelimen, käyttäjätunnuksen, salasanan ja lähettäjäosoitteen miltä tahansa palveluntarjoajalta. Alusta tarvitsee ne sähköpostin vahvistukseen ja salasanan palautukseen, ja CLI ei asenna ilman niitä. Oletuksena viestit lähetetään STARTTLS-salauksella portin 587 kautta.

Ylläpitäjän sähköpostiosoite ensimmäistä kirjautumista ja salasanan palautusta varten.

2. Asenna Docker

Noudata jakelusi virallisia ohjeita: Install Docker Engine. Anna sen jälkeen käyttäjällesi oikeus käyttää daemonia:

sudo usermod -aG docker <user>

Kirjaudu ulos ja takaisin sisään. Tarkista sitten, että molemmat osat ovat paikallaan:

docker ps
docker compose version

3. Lataa CLI

Valitse palvelimeesi sopiva platform-arvo:

linux/amd64

curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=linux/amd64" -o wlycli
chmod +x wlycli
./wlycli -v
  
linux/arm64

curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=linux/arm64" -o wlycli
chmod +x wlycli
./wlycli -v
  
darwin/arm64

curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=darwin/arm64" -o wlycli
chmod +x wlycli
./wlycli -v
  
darwin/amd64

curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=darwin/amd64" -o wlycli
chmod +x wlycli
./wlycli -v
  

4. Asenna Welley

./wlycli deploy create \
-d example.com \
-e admin@example.com \
--smtp-host smtp.example.com \
--smtp-user "$MAIL_USER" \
--smtp-password "$MAIL_PASSWORD" \
--smtp-from noreply@example.com

Nämä kuusi lippua ovat koko pakollinen joukko. Komento tarkistaa DNS:n, kirjoittaa asennustiedostot, myöntää varmenteen Certbotilla ja käynnistää kontit. Varaudu siihen, että se kestää useita minuutteja.

Hyväksyt tässä seuraavat oletusarvot:

Asetus Oletus
Asennushakemisto ~/.welley/<project>, jossa <project> on verkkotunnus, jonka jokainen muu merkki kuin kirjain tai numero on korvattu merkillä _ (eli example.com muuttuu muotoon example_com)
Tietokanta mukana tuleva PostgreSQL-kontti, tiedot asennushakemiston alla
Varmenteet Let's Encrypt Certbotin kautta, uusitaan automaattisesti kerran viikossa
Lataukset ja staattiset tiedostot tarjotaan osoitteesta https://storage.<domain>
Päivitykset stable-kanava, tarkistetaan päivittäin ja otetaan käyttöön ilman käyttökatkoa, kun se on mahdollista

5. Ensimmäinen kirjautuminen

Luotu ylläpitäjän salasana tulostuu alustan lokiin:

docker logs example_com-platform-blue-1 | grep "Auto-init complete"

Avaa https://<domain>, kirjaudu sisään sillä ylläpitäjän sähköpostiosoitteella, jonka annoit lipulla -e, ja vaihda salasana heti. Käsittele lokia salaisena, kunnes olet vaihtanut salasanan.

6. Tarkista lopputulos

docker ps

Listassa pitäisi näkyä yksi kontti kullekin näistä: nginx, platform-blue, rag-pipeline-blue, postgres, redis, autoheal ja snoopy. Kaikkien nimi on muotoa <project>-<service>-1.

Jos jokin meni pieleen

Komentoa create ei voi ajaa toista kertaa, kun projektihakemisto tai sen kontit ovat olemassa. Jos tiedostot ovat kunnossa ja vain jotkin kontit eivät käynnistyneet, voit luoda ne uudelleen menettämättä mitään:

./wlycli deploy restart -d example.com

Jos koko asennus pitää tehdä uudelleen, poista se ja aloita alusta. Tämä poistaa mukana tulevan tietokannan ja kaiken muun:

./wlycli deploy delete -d example.com --yes-please-delete-all-the-data

Muut asiakirjat