* 'master' of https://github.com/tborychowski/self-hosted-cookbook:
  alternatrr
  language tool
  vpn
  wordpress
  ghost
This commit is contained in:
Dziad Borowy 2022-06-16 11:08:21 +01:00
commit 90c316e10c
5 changed files with 162 additions and 3 deletions

View File

@ -52,9 +52,12 @@ The aims is to provide a ready-to-run recipes that you can just copy, paste and
# Blogging & CMS
- [Ghost](apps/cms/ghost.md)
- [Wordpress](apps/cms/wordpress.md)
### Other (not tested)
- [AnchorCMS](https://github.com/anchorcms/anchor-cms#installation) 🔗
- [Bludit](https://www.bludit.com) 🔗 - Simple, Fast, Secure, Flat-File CMS.
- [Ghost](https://ghost.org/docs/install/docker/) 🔗
- [Grav](https://getgrav.org) 🔗 - modern open source flat-file CMS.
- [Hugo](https://gohugo.io/) 🔗
- [Kirby](https://getkirby.com/) 🔗
@ -66,7 +69,6 @@ The aims is to provide a ready-to-run recipes that you can just copy, paste and
- [WriteFreely](https://github.com/writeas/writefreely) 🔗
# Bookmarks & Read Later
- [LinkAce](apps/bookmarks/linkace.md)
- [Linkding](apps/bookmarks/linkding.md)
@ -75,6 +77,7 @@ The aims is to provide a ready-to-run recipes that you can just copy, paste and
- [Shaark](apps/bookmarks/shaark.md)
- [Wallabag](apps/bookmarks/wallabag.md)
### Other
- [Nunux Keeper](https://keeper.nunux.org/) 🔗 - similar to wallabag, but not as good (more complicated, less usable and doesn't have mobile apps).
- [Reminescence](https://github.com/kanishka-linux/reminiscence#using-docker) 🔗 - Clean and simple. Has a DIY-Docker-Image. Buggy (archiving doesn't work half of the time).
@ -191,6 +194,7 @@ The aims is to provide a ready-to-run recipes that you can just copy, paste and
# Media Managers
- [Alternatrr](https://github.com/TheUltimateC0der/alternatrr) 🔗 - alternative titles for Sonarr
- [Audiobookshelf](apps/media/audiobookshelf.md) - audiobooks
- [Bazarr](apps/media/bazarr.md) - subtitles
- [Calibre](apps/media/calibre.md) - e-books
@ -271,7 +275,8 @@ The aims is to provide a ready-to-run recipes that you can just copy, paste and
- [Cockpit](apps/other/cockpit.md)
- [Code server](apps/other/code.md)
- [Firefox sync server](apps/other/firefox-sync.md)
- [LanguageTool server](apps/other/language-tool.md)
- [VPN client](apps/other/vpn.md)
# Photos

28
apps/cms/ghost.md Normal file
View File

@ -0,0 +1,28 @@
# Ghost
Flat file cms/blogging platform.
<br>
- [Github repo](https://github.com/TryGhost/Ghost)
- [Docs](https://ghost.org/docs/install/docker/)
## docker-compose.yml
```yml
---
version: '3.1'
services:
ghost:
image: ghost:4-alpine
container_name: ghost
restart: unless-stopped
ports:
- 2368:2368
environment:
# https://ghost.org/docs/config/#configuration-options
url: http://<serverIP>:2368
volumes:
- ./data:/var/lib/ghost/content
```
After the startup, open `http://<serverIP>:2368/ghost` to finish setup.

42
apps/cms/wordpress.md Normal file
View File

@ -0,0 +1,42 @@
# Wordpress
The ultimate CMS/blogging platform.
- hellishly slow! (loading from a server in LAN takes ~3-7 seconds)
- extremely complex
- tons of plugins & themes & configurability
<br>
- [Homepage](https://wordpress.org/)
- [Docker Hub](https://hub.docker.com/_/wordpress)
- [Github repo](https://github.com/WordPress/WordPress)
## docker-compose.yml
```yml
---
version: '3.1'
services:
wordpress:
image: wordpress
restart: unless-stopped
ports:
- 3123:80
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: exampleuser
WORDPRESS_DB_PASSWORD: examplepass
WORDPRESS_DB_NAME: blog
volumes:
- ./data:/var/www/html
db:
image: mysql:5.7
restart: unless-stopped
environment:
MYSQL_DATABASE: blog
MYSQL_USER: exampleuser
MYSQL_PASSWORD: examplepass
MYSQL_RANDOM_ROOT_PASSWORD: '1'
volumes:
- ./db:/var/lib/mysql
```

View File

@ -0,0 +1,37 @@
# LanguageTool
Multilingual grammar, style, and spell checker (similar to Grammarly).
<br>
- [Official Site](https://languagetool.org)
- [Github repo](https://github.com/Erikvl87/docker-languagetool)
- [Docker Hub](https://hub.docker.com/r/erikvl87/languagetool)
## Optional n-gram data
LanguageTool can make use of large n-gram data sets to detect errors with words that are often confused, like `their` and `there`.
1. Download n-gram data: https://languagetool.org/download/ngram-data/
2. Uncomment n-gram volume and env variable below
## docker-compose.yml
```yml
---
version: "3"
services:
languagetool:
image: erikvl87/languagetool
container_name: languagetool
restart: unless-stopped
ports:
- 8010:8010 # Using default port from the image
environment:
# - langtool_languageModel=/ngrams # OPTIONAL: Using ngrams data
- Java_Xms=512m # OPTIONAL: Setting a minimal Java heap size of 512 mib
- Java_Xmx=1g # OPTIONAL: Setting a maximum Java heap size of 1 Gib
# volumes:
# - ./data:/ngrams
```
And then, in a browser extension:
- in `LanguageTool API server URL:` select `Other server`
- enter: `http://<SERVER IP>:8010/v2`

47
apps/other/vpn.md Normal file
View File

@ -0,0 +1,47 @@
# Gluetun VPN client
A VPN client to tunnel to Cyberghost, ExpressVPN, FastestVPN, HideMyAss, IPVanish, IVPN, Mullvad, NordVPN, Perfect Privacy, Privado, Private Internet Access, PrivateVPN, ProtonVPN, PureVPN, Surfshark, TorGuard, VPNUnlimited, VyprVPN, WeVPN and Windscribe VPN servers using Go, OpenVPN or Wireguard, iptables, DNS over TLS, ShadowSocks and an HTTP proxy.<br>
- [Github repo](https://github.com/qdm12/gluetun)
- [Docker Hub](https://hub.docker.com/r/qmcgaw/gluetun)
## Requirements
An account with a compatible VPN provider is required.
## docker-compose.yml
```yml
---
version: "3"
services:
gluetun:
image: qmcgaw/gluetun
container_name: gluetun
restart: unless-stopped
cap_add:
- NET_ADMIN
environment:
- TZ=Europe/Dublin
- VPN_TYPE=openvpn
- VPNSP=fastestvpn
- OPENVPN_USER=<VPN LOGIN>
- OPENVPN_PASSWORD=<VPN PASSWORD>
- COUNTRY=<VPN COUNTRY>
volumes:
- ./data:/gluetun
- ./data/port_forward:/tmp/gluetun/forwarded_port
ports:
#- 8888:8888/tcp # HTTP proxy
- 3020:8000/tcp # Built-in HTTP control server
- 9117:9117 # jackett
- 6881:6881 # qbit
- 3030:3030 # qbit webUI
```
and then - in the corresponding service `docker-compose.yml`, e.g.:
```yml
---
version: "3"
services:
jackett:
image: ghcr.io/linuxserver/jackett
network_mode: "container:gluetun"
```