inital setup
This commit is contained in:
12
.env.sample
Normal file
12
.env.sample
Normal file
@@ -0,0 +1,12 @@
|
||||
WIKITAG=2
|
||||
DBTAG=10.6
|
||||
SEARCHTAG=7.17.10
|
||||
|
||||
INTRANET=
|
||||
|
||||
DB_TYPE=
|
||||
DB_HOST=
|
||||
DB_PORT=
|
||||
DBNAME=
|
||||
DB_USER=
|
||||
DB_PASS=
|
||||
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
.env
|
||||
files/
|
||||
69
README.md
69
README.md
@@ -1,2 +1,69 @@
|
||||
# compose-wikijs
|
||||
# Basic Wiki.js with MariaDB and Elasticsearch docker-compose config
|
||||
* can be run on single node setup or in swarm
|
||||
|
||||
## howto
|
||||
### single node
|
||||
#### start container
|
||||
```bash
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
#### stop container (and remove)
|
||||
```bash
|
||||
docker compose down
|
||||
```
|
||||
|
||||
#### view logs
|
||||
```bash
|
||||
docker compose logs -f
|
||||
```
|
||||
|
||||
#### reload config
|
||||
```bash
|
||||
docker compose restart
|
||||
```
|
||||
|
||||
### swarm
|
||||
#### start aka deploy
|
||||
hint: drone fails to start until git auth source is created and set in vars
|
||||
```bash
|
||||
docker stack deploy -c docker-compose.yml wiki
|
||||
```
|
||||
|
||||
#### stop container aka stack
|
||||
```bash
|
||||
docker stack rm wiki
|
||||
```
|
||||
|
||||
#### view logs
|
||||
```bash
|
||||
docker service logs wiki_wiki -f
|
||||
docker service logs wiki_db -f
|
||||
docker service logs wiki_elastic -f
|
||||
```
|
||||
|
||||
#### reload config (no downtime if replica 2 or more)
|
||||
```bash
|
||||
docker service update wiki_wiki
|
||||
docker service update wiki_db
|
||||
docker service update wiki_elastic
|
||||
```
|
||||
|
||||
## example caddy config
|
||||
```
|
||||
wiki.example.com {
|
||||
reverse_proxy wiki:3000
|
||||
}
|
||||
```
|
||||
|
||||
## config elastic search engin
|
||||
1) Goto: Adminpanel => Search Engin
|
||||
2) Select Elasticsearch
|
||||
- Elasticsearch Version: 7.x
|
||||
- Hosts: http://elastic:9300
|
||||
- Index Name: wiki
|
||||
3) Save with "Apply"
|
||||
4) Hit "Rebuild index"
|
||||
|
||||
## source
|
||||
- https://www.lucadentella.it/en/2022/05/10/wiki-js-ricerca-full-text-con-elasticsearch/
|
||||
75
docker-compose.yml
Normal file
75
docker-compose.yml
Normal file
@@ -0,0 +1,75 @@
|
||||
# https://docs.docker.com/compose/compose-file/compose-file-v3/
|
||||
---
|
||||
version: "3.9"
|
||||
services:
|
||||
wiki:
|
||||
image: requarks/wiki:${WIKITAG:-latest}
|
||||
container_name: wiki
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- db
|
||||
- elastic
|
||||
ports:
|
||||
- 3000:3000
|
||||
deploy:
|
||||
replicas: 1
|
||||
placement:
|
||||
max_replicas_per_node: 1
|
||||
update_config:
|
||||
parallelism: 1
|
||||
delay: 10s
|
||||
# volumes: # only need if using sqlite
|
||||
# - ${BASEDIR:-.}/files/data/:/data/
|
||||
# - ${BASEDIR:-.}/files/config/:/config/
|
||||
environment:
|
||||
- DB_TYPE=${DB_TYPE:-mariadb}
|
||||
- DB_HOST=${DB_HOST:-db}
|
||||
- DB_PORT=${DB_PORT:-3306}
|
||||
- DB_NAME=${DBNAME:-wikijs}
|
||||
- DB_USER=${DB_USER:-wikijs}
|
||||
- DB_PASS=${DB_PASS:-wikijspasswd}
|
||||
networks:
|
||||
- backend
|
||||
- wikinet
|
||||
|
||||
db:
|
||||
image: mariadb:${DBTAG:-latest}
|
||||
container_name: wikidb
|
||||
restart: unless-stopped
|
||||
deploy:
|
||||
replicas: 1
|
||||
placement:
|
||||
max_replicas_per_node: 1
|
||||
update_config:
|
||||
parallelism: 1
|
||||
delay: 10s
|
||||
volumes:
|
||||
- ${BASEDIR:-.}/files/db/:/var/lib/mysql/
|
||||
environment:
|
||||
- MARIADB_RANDOM_ROOT_PASSWORD=yes
|
||||
- MARIADB_DATABASE=${DB_NAME:-wikijs}
|
||||
- MARIADB_USER=${DB_USER:-wikijs}
|
||||
- MARIADB_PASSWORD=${DB_PASS:-wikijspasswd}
|
||||
networks:
|
||||
- wikinet
|
||||
|
||||
elastic:
|
||||
image: elasticsearch:${SEARCHTAG:-latest}
|
||||
container_name: elastic
|
||||
deploy:
|
||||
replicas: 1
|
||||
placement:
|
||||
max_replicas_per_node: 1
|
||||
update_config:
|
||||
parallelism: 1
|
||||
delay: 10s
|
||||
environment:
|
||||
- xpack.security.enabled=false
|
||||
- "discovery.type=single-node"
|
||||
networks:
|
||||
- wikinet
|
||||
|
||||
networks:
|
||||
backend:
|
||||
name: ${INTRANET:-backend}
|
||||
wikinet:
|
||||
Reference in New Issue
Block a user