Движок Wiki.js с дополнениями для МИЭМа.
Wiki.js - это движок с открытым исходным кодом, источник - Wiki.js
Склонировать репозиторий: git clone https://git.miem.hse.ru/370/miem-wiki.git
Необходимые программы:
Порядок действий:
package.json
указать значение поля dev
равным true
yarn
yarn dev
Порядок действий:
package.json
указать значение поля dev
равным false
yarn
yarn build
yarn install --production
assets/ minified frontend files
node_modules/ npm packages
data/ subsidiary cache and uploads
server/ backend
config.sample.yml configs for running server
LICENSE
package.json
5.1. Команда для TAR.GZ: tar -czf release.tar.gz assets node_modules server LICENSE config.sample.yml package.json
zip -r resease.zip assets node_modules server LICENSE config.sample.yml package.json
Необходимые программы:
Порядок действий:
Запустить сборку командой docker build -t 370/miem-wiki:latest -f dev/build/Dockerfile .
Для работы Вики необходима СУБД Postgres. Для обеспечения работы SSL рекомендуется использовать обратный прокси, например Nginx.
Необходимые программы:
Порядок действий:
config.sample.yml
в config.yml
config.yml
следующие параметры:port: 3000
db:
type: postgres # Рекомендуется использовать postgres, так как в будущем поддержка других движков будет прекращена
host: localhost
port: 5432
user: wiki
pass: wikipassword
db: wiki
ssl: false
bindIp: 0.0.0.0 # в случае использования обратного прокси реомендуется установить 127.0.0.1
wiki.service
):[Unit]
Description=Wiki
After=network.target
[Service]
Type=simple
Restart=always
User=<user>
Group=<group>
ExecStart=/usr/bin/npm start
WorkingDirectory=/path/to/wiki/engine
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
, запустить службу: systemctl start wiki
, включить службу при запуске сервера: systemctl enable wiki
Данный вид развертывания подразумевает запуск движка в контейнере. Для удобства запуска, рекомендуется запускать базу данных также в контейнере.
Необходимые программы:
Порядок действий:
docker login
, используя Deploy Token или Personal Access Token. Подробнее см. справку GitLab Container Registry\version: "3"
services:
db:
image: postgres:14
environment:
POSTGRES_DB: wiki
POSTGRES_PASSWORD: wikijsrocks
POSTGRES_USER: wiki
logging:
driver: "none"
restart: unless-stopped
volumes:
- db-data:/var/lib/postgresql/data
wiki:
image: <image> # Образ с движком
depends_on:
- db
environment:
DB_TYPE: postgres
DB_HOST: db
DB_PORT: 5432
DB_USER: wikijs
DB_PASS: wikijsrocks
DB_NAME: wiki
restart: unless-stopped
ports:
- "3000:3000"
volumes:
db-data:
задав собственные значения для имени базы даннных и логина/пароля от нее. Вместо <image>
нужно задать образ, который планируется использовать:
ghcr.io/requarks/wiki:2
для оригинального движка Wiki.jsregistry.miem.hse.ru/370/miem-wiki:latest
для модифицированного движка MIEMdocker compose up -d
Все данные движка хранятся в базе данных Postgres. Для создания резервной копии нужно выполнить следющую команду:
docker compose exec db pg_dump -U wiki wiki > dump.sql
docker compose up -d db
docker compose exec -T db psql -U wiki wiki < dump.sql
docker compose up -d
Чтобы сделать обновления взможными, необходимо использовать тег latest при указании образа в docker-compose.yml
. Для обновления до новейшей версии необходимо выполнить следующие команды:
docker compose pull
docker compose up -d