1. Koti
  2. /
  3. Ajankohtaista
  4. /
  5. WikiJS:n asentaminen OpenShift-alustalle

WikiJS:n asennus OpenShift / OKD 4:ään

WikiJS:n asentaminen OpenShift / OKD 4:ään Crunchy PostgreSQL:n avulla

Binero Groupissa työskentelemme päivittäin ohjelmistojen toimittamisen parantamiseksi. Yrityksemme perustana on avoimen lähdekoodin periaate, ja siksi pyrimme antamaan asiakkaillemme mahdollisimman paljon siitä, mitä kehitämme.

Etsiessämme Kubernetes-pohjaista Wikiä löysimme WikiJS:n, modernin Wikin, joka tukee markdown-tiedostoja ja useita tallennusjärjestelmätaustaohjelmia, kuten git ja PostgreSQL.
Verkkosivusto tarjoaa tietoa asennuksesta Kubernetesiin, mutta OpenShiftissä on joitakin lisäsuojausominaisuuksia, jotka on otettava huomioon asennettaessa ohjelmistoja siihen.

Jos haluat siirtyä suoraan koodiin ja lyhyeseen selitykseen, löydät Git-repositorion täältä sekä viittauksen tekijään, joka aloitti tämän työn. Lue kuitenkin vielä vähän lisää, jos haluat tietää enemmän asetusten taustalla olevista syistä.

Först och främst vill vi använda produkter som har en stor installerad bas och en hög automatiseringsgrad, så att arbetet med att underhålla programvaran minimeras: vi vill fokusera så mycket som möjligt på effektiv användning och dra nytta av de möjligheter som Kubernetes erbjuder. Av den anledningen väljer vi att använda Crunchy Data Postgres Operator för att installera PostgreSQL som lagringsbackend för WikiJS, eftersom det är den som har bäst support.

Sedan visar vi hur man bygger en docker-bild som kan läggas till i ett internt arkiv efter behov och användas för ett så kallat sideloading-läge, vilket innebär att de filer som installationen behöver är paketerade i containern, så att ingen internetanslutning behövs för att hämta filerna vid initialiseringen. Bilden är offentligt tillgänglig på Docker Hub och uppdateras för närvarande manuellt – detta kan komma att ändras i framtiden, så vi rekommenderar att du själv konfigurerar byggandet för att ha den senaste versionen som krävs.

Aloitetaanpa!

WikiJS Openshift / OKD 4:ssä

WikiJS:n asentaminen Openshift 4:ään (sivulataustilan avulla)

Edellytykset:

  • Openshift- tai OKD-klusterin käyttö pysyvällä tallennustilalla
    Esimerkit koskevat kaikkia OKD- tai OpenShift 4 -klustereita. Kuvakaappaukset on otettu CRC:llä (nykyisin OpenShift Local) toimivasta OKD:stä, kuten tässä kuvataan.
1. Luo projekti:
oc new-project wikijs

Vaihtoehtoisesti voit mennä osoitteeseen https://console-openshift-console.apps-crc.testing/k8s/cluster/projects klikata Luo projekti ja nimetä sen wikijs:

Kuinka luoda projekti wiki.js:ssä OpenShiftissä

2. Asenna Crunchy Postgres for Kubernetes -operaattori OperatorHubista tai seuraamalla näitä ohjeita:

https://access.crunchydata.com/documentation/postgres-operator/v5/quickstart/

Valitse kaikki nimitilat, jos haluat käyttää sitä useammassa kuin yhdessä. Muussa tapauksessa käytä aiemmin luomaamme wikijs-nimitilaa.

Crunchy Postgres for Kubernete -operaattorin wiki.js:n asentaminen OpenShift-ympäristöön

3. Asenna Postgres-tietokanta seuraavasti ja varmista, että oc-komento käyttää oikeaa kontekstia. Muuta arvoja tarvittaessa – tällä hetkellä se on 20 Gt.
oc apply -f postgres.yaml
4. Nyt sinulla pitäisi olla PostgresCluster CR -kohde asennettujen operaattoreiden välilehdessä:

PostgresCluster CR wiki.js OpenShiftissä

Sinun pitäisi pystyä muodostamaan yhteys paikalliselta koneelta psql:llä seuraavasti (varmista, että psql on asennettu):

PG_CLUSTER_PRIMARY_POD=$(oc get pod -n wikijs -o name -l postgres-operator.crunchydata.com/cluster=wikijs,postgres-operator.crunchydata.com/role=master)

kubectl -n wikijs port-forward "${PG_CLUSTER_PRIMARY_POD}" 5432:5432 &

PG_CLUSTER_USER_SECRET_NAME=wikijs-pguser-wikijs
PGPASSWORD=$(kubectl get secrets -n wikijs "${PG_CLUSTER_USER_SECRET_NAME}" -o go-template='{{.data.password | base64decode}}') PGUSER=$(kubectl get secrets -n wikijs "${PG_CLUSTER_USER_SECRET_NAME}" -o go-template='{{.data.user | base64decode}}') PGDATABASE=$(kubectl get secrets -n wikijs "${PG_CLUSTER_USER_SECRET_NAME}" -o go-template='{{.data.dbname | base64decode}}') psql -h localhost

Sinun pitäisi saada komentotulkki, joka osoittaa, että yhteys käyttää TLS:ää, joka on tämän operaattorin oletusasetus.

5. Minulle WikiJS:n yhdistäminen PostgreSQL:ään SSL:n avulla ei toiminut, joten minun piti lisätä CA-varmenne ohjeiden mukaisesti:

(DB_SLL_CA - Database CA certificate content, as a single line string (without spaces or new lines), without the prefix and suffix lines. (optional, requires 2.3+))

Tämä on tallennettu pgo-root-cacert-salaisuuteen. Suorita komentosarja saadaksesi sen oikeassa muodossa:

./getPsqlRootCAString.sh

Se antaa jotain tällaista:

MIIBgTCCASegAwIBAgIQFlUx8CFOhxtbNv8baQQh7jA
KBggqhkjOPQQDAzAfMR0wGwYDVQQDExRwb3N0Z3
Jlcy1vcGVyYXRvci1jYTAeFw0yMjExMjUxMjM1NDNaFw
0zMjExMjIxMzM1NDNaMB8xHTAbBgNVBAMTFHBvc3
RncmVzLW9wACBhdG9yLWNhMFkwEwNHKoZIzj0CA
QYIKoZIzj0DAQcDQgAElokygIJH/U06gVTTQRZB0B1
cdSV8bP/HWVJ7BYOhcuOUymQsPnKDg27DgQSa9z
VVLADHf24vuMg8Uo/NDfjaf6NFMEMwDgYDVR0PAQ
H/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAw
HQYDVR0OBBYEFN/HmCEkp7HKceaU/QACugp4tu/
LMAoGCCqGSM49BAMDA0gAMEUCIQC/qZJx55pqz
B0QmSRL6UmhnSeUl85rf2+X3eods2miKgIgM3swV3
UuTMgdDm8scsW1aDwhkPpCkwOXbaM0mX2jDvM=

Lisää tämä deploymentConfig.yaml-tiedostoon, katkelma:

- name: DB_SSL_CA
value:
MIIBgTCCASegAwIBAgIQFlUx8CFOhxtbNv8baQQh7jA
KBggqhkjOPQQDAzAfMR0wGwYDVQQDExRwb3N0Z3
Jlcy1vcGVyYXRvci1jYTAeFw0yMjExMjUxMjM1NDNaFw
0zMjExMjIxMzM1NDNaMB8xHTAbBgNVBAMTFHBvc3
RncmVzLW9wACBhdG9yLWNhMFkwEwNHKoZIzj0CA
QYIKoZIzj0DAQcDQgAElokygIJH/U06gVTTQRZB0B1
cdSV8bP/HWVJ7BYOhcuOUymQsPnKDg27DgQSa9z
VVLADHf24vuMg8Uo/NDfjaf6NFMEMwDgYDVR0PAQ
H/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAw
HQYDVR0OBBYEFN/HmCEkp7HKceaU/QACugp4tu/
LMAoGCCqGSM49BAMDA0gAMEUCIQC/qZJx55pqz
B0QmSRL6UmhnSeUl85rf2+X3eods2miKgIgM3swV3
UuTMgdDm8scsW1aDwhkPpCkwOXbaM0mX2jDvM=

Nyt olemme valmiita ottamaan sen käyttöön.

6. Asennustiedosto sisältää viittauksen mainitun viittauksen tekijän luomaan Docker-kuvaan. Kuten mainittu, tämä voidaan rakentaa mukana olevasta Dockerfile-tiedostosta.

Käytännöllisyyden vuoksi voimme käyttää tätä kuvaa, jotta voit käyttää omaa kuvaa, rakentaa kuvan ja merkitä sen:
docker build -t yourusername/repository-name .

Käytin Docker Hubia:

docker build -t vgerris/wikijs:2 .

siirrä se sitten valitsemaasi rekisteriin ja päivitä viite asennustiedostossa
lisätietoja : https://docs.docker.com/engine/reference/commandline/push/

docker push vgerris/wikijs:2

Käytä nyt käyttöönottoa:

oc apply -f deploymentConfig.yaml
7. Nyt kun sovellus on otettu käyttöön, voimme lisätä palvelun ja reitin sen esittelemiseksi. Päivitä reittitiedosto palvelimesi URL-osoitteella:
oc apply -f service.yaml
oc apply -f route.yaml

Sovelluksen pitäisi nyt olla käynnissä ja näkyvissä reitillä, joten voit viimeistellä sen asetukset.

Nauti WikiJS:stä!

Valinnainen
Jos sinulla on jo olemassa oleva Markdown-tiedostojen (MD) kokoelma, voi olla hyödyllistä lisätä ne wikiin. Lisätietoja siitä, miten se asetetaan, kun se on tallennettu git:iin, löytyy täältä.
Tiedostot indeksoidaan ja lisätään WikiJS:ään, ja niitä voi muokata suoraan Markdown-editorilla. Bonuksena WikiJS:ssä on kaavioplugin, jonka avulla on todella helppo lisätä draw.io-pohjaisia kaavioita suoraan asiakirjoihin.

OpenID Connectin asettaminen esimerkiksi Keycloakin kanssa on myös melko helppoa.
Siirry hallinnassa kohtaan todennus, lisää strategia ja valitse Keycloak.
Luo asiakas Keycloakissa ja täytä vaaditut kentät.
Poista vieraskäyttäjä käytöstä, jos et halua sen olevan julkinen, katso:
https://docs.requarks.io/groups ( Yksityinen Wiki)

Binero Group toimittaa OKD:n Binero-pilvipalvelun lisäksi myös täysin tuetun Red Hat OpenShift Container Platform -alustan isännöitynä tai täysin hallinnoituna ratkaisuna ruotsalaisissa datakeskuksissa GDPR-vaatimusten mukaisesti.

Kokeile Binero-pilvipalvelua ja ota meihin yhteyttä, jos sinulla on kysyttävää. Autamme mielellämme!

Luo tili Binero-pilvipalvelussa

Share this article

liittyvät artikkelit

omslagsbild med text artikel World cup qualifiers
Special events
Viimeisimmät uutiset
Valfritt
5 elokuun 2025
omslagsbild med text artikel Show sports in public
EzyStream
Viimeisimmät uutiset
Valfritt
29 heinäkuun 2025
omslagsbild med text artikel TV as a Service – Modern TV solutions
EzyStream
Viimeisimmät uutiset
Valfritt
29 heinäkuun 2025

Haluatko tietää lisää?

Meitä motivoi auttaa asiakkaitamme parantamaan innovaatiokykyään ja IT-kustannustehokkuuttaan. Haluatko sinäkin hyötyä uusimmista korkean suorituskyvyn pilvipalveluista?