This commit is contained in:
Tomasz Borychowski 2020-10-18 20:40:16 +01:00
parent 1b9c3b4e9f
commit e9267eaa3d
18 changed files with 458 additions and 16 deletions

View File

@ -10,20 +10,33 @@ The aims is to provide a ready-to-run recipes that you can just copy, paste and
So, without further ado, here's the current list:
# Ad Blockers & local DNS
- [AdGuard Home](apps/ad-blockers/adguard-home.md)
- [AdGuard Home](apps/ad-blockers/adguard.md)
- [PiHole](apps/ad-blockers/pihole.md)
- [Block Lists](apps/ad-blockers/block-lists.md)
- [Block Lists](apps/ad-blockers/lists.md)
# Blogging
- [AnchorCMS](https://github.com/anchorcms/anchor-cms#installation)
- [Ghost](https://ghost.org/docs/install/docker/)
- [Hugo](https://gohugo.io/)
- [Kirby](https://getkirby.com/)
- [Metalsmith](https://metalsmith.io/)
- [Pagekit](https://pagekit.com/docs/getting-started/installation)
- [Pelican](https://docs.getpelican.com/en/stable/quickstart.html#installation)
- [PostLeaf](https://www.postleaf.org/installing)
- [Textpattern](https://docs.textpattern.com/installation/)
- [WriteFreely](https://github.com/writeas/writefreely)
# Bookmarks
- Shaarli
- Shiori
- Shaark
- [Shaarli](apps/bookmarks/shaarli.md)
- [Shiori](apps/bookmarks/shiori.md)
- [Shaark](apps/bookmarks/shaark.md)
# Cloud
- FileRun
- NextCloud
- Pydio
- Seafile
- [FileRun](apps/cloud/filerun.md)
- [NextCloud](apps/cloud/nextcloud.md)
- [Pydio](apps/cloud/pydio.md)
- [Seafile](apps/cloud/seafile.md)
# Dashboard
- DashMachine

View File

@ -4,8 +4,9 @@
- [Homepage](https://adguard.com/en/adguard-home/overview.html)
- [Overview blog post](https://adguard.com/en/blog/in-depth-review-adguard-home.html)
- [Github](https://github.com/AdguardTeam/AdguardHome)
- [DockerHub](https://hub.docker.com/r/adguard/adguardhome)
- [Github repo](https://github.com/AdguardTeam/AdguardHome)
- [DockerHub repo](https://hub.docker.com/r/adguard/adguardhome)
## `docker-compose.yml`
```yml

View File

@ -6,8 +6,8 @@
- [disconnect.me/simple_ad](https://s3.amazonaws.com/lists.disconnect.me/simple_ad.txt)
- [hosts-file.net/ad_servers](https://hosts-file.net/ad_servers.txt)
- [ookangzheng/dbl-oisd-nl](https://raw.githubusercontent.com/ookangzheng/dbl-oisd-nl/master/dbl.txt)
- [more lists](blacklists.txt)
- [more lists](lists-black.txt)
# Whitelists
- [raghavdua1995/DNSlock-PiHole-whitelist](https://raw.githubusercontent.com/raghavdua1995/DNSlock-PiHole-whitelist/master/whitelist.list)
- [another one](whitelist.txt)
- [another one](lists-white.txt)

View File

@ -1,12 +1,12 @@
# PiHole
## Overview
- [Homepage](https://pi-hole.net/)
- [Pihole Docker github repo](https://github.com/pi-hole/docker-pi-hole)
- [Docs](https://docs.pi-hole.net/)
- [Github](https://github.com/pi-hole)
- [DockerHub](https://hub.docker.com/r/pihole/pihole)
- [Github repo](https://github.com/pi-hole)
- [DockerHub repo](https://hub.docker.com/r/pihole/pihole)
## `docker-compose.yml`
```yml

BIN
apps/bookmarks/shaark.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 162 KiB

10
apps/bookmarks/shaark.md Normal file
View File

@ -0,0 +1,10 @@
# Shaark
Good looking, but doesn't work ATM.
Also - doesn't have a public image on Docker Hub (or similar), so can't use `docker-compose` the easy way.
- [Github repo](https://github.com/MarceauKa/shaark)
- [DockerHub repo]()
- [Docs](https://github.com/MarceauKa/shaark#documentation)
- [Demo](https://shaark.mka.ovh): `admin@example.com`:`secret`
![Screenshot](shaark.jpg)

136
apps/bookmarks/shaarli.md Normal file
View File

@ -0,0 +1,136 @@
# Shaarli
Not too bad. Just stores & tags links, nothing more.
- [Github repo](https://github.com/shaarli/Shaarli)
- [Docs](https://shaarli.readthedocs.io/en/master/)
- [Demo](https://demo.shaarli.org/)
![Screenshot](shaarli.png)
## docker-compose.yml
```yml
---
version: '3'
services:
shaarli:
image: shaarli/shaarli:master
container_name: shaarli
restart: unless-stopped
environment:
- TZ=Europe/Dublin
ports:
- "3123:80"
volumes:
- ./cache:/var/www/shaarli/cache
- ./data:/var/www/shaarli/data
```
## Tips & Tricks
### Nicer theme
Edit `shaarli/data/user.css`:
```css
:root {
--main-color: #144837;
--background-color: #333;
--dark-main-color: #0c281d;
}
#actions,
#search { display: none; position: relative; }
#actions.open,
#search.open { display: block; }
#shaarli-menu-tags,
#shaarli-menu-picwall,
#shaarli-menu-daily,
#shaarli-menu-desktop-rss,
#linklist-paging-bottom-block,
#footer,
.linksperpage form,
.linkcount,
.fa-external-link,
.pure-u-lg-2-24,
#search-linklist .searchform { display: none !important; }
#link-count-content,
#linklist-loop-content { width: 90%; margin: 10px auto; }
#linklist { margin-bottom: 40px; }
.linklist-item-title,
.linklist-item { background-color: #222; color: #f0f0f0; }
.linklist-item { margin-bottom: 20px; }
.linklist-item-title .linklist-link { color: #ccc !important; font-weight: 300; }
.linklist-item-infos { background: #0003; color: #333; }
.linklist-filters,
.linksperpage,
.linklist-item-description,
.linklist-item-infos { color: #aaa !important; }
.linklist-item.private::before { display: none; }
.linklist-item { box-shadow: none; }
.linksperpage a,
.linklist-filters .filter-off { background: none; color: #eee; }
.linklist-item-infos { padding: 10px 20px; }
.linklist-item-infos a { color: #317b63; }
.linklist-item-infos a:hover { color: #eee; }
.label { font-weight: 300; }
.markdown { font-size: 14px; }
.linklist-item-title { padding: 5px 10px; }
.linklist-item-description { padding: 5px 20px; }
.linklist-item-thumbnail { margin: -5px -10px 0 0; }
.linklist-item-infos-dateblock { display: flex; align-items: center; }
.linklist-item-infos-controls-group { display: inline-flex !important; align-items: center; border-right: 0; }
.linklist-item-infos-controls-item {
height: 24px;
display: inline-flex;
align-items: center;
justify-content: flex-start;
width: 32px;
}
.linklist-item-infos-url { font-size: 14.4px; }
.linklist-item-editbuttons { position: absolute; right: 130px; }
.page-form,
.page-form .window-title,
.page-form { background: #222; color: #eee; box-shadow: none; }
.page-form-complete div,
.page-form-complete p { color: #eee; }
.page-form input[type="password"],
.page-form input[type="text"],
.page-form textarea { background: #111; color: #eee; border-color: #111; }
.page-form a.button,
.page-form input[type="submit"] { box-shadow: none; border-radius: 5px; }
.pure-button {
background-color: #111;
color: #ccc;
border-radius: 5px;
padding: 12px;
font-weight: 300;
}
.linklist-item-tags { margin-bottom: 5px; }
.edit-link,
.delete-link,
.pin-link { font-size: 14px !important; }
.linklist-item-infos .pin-link,
.edit-link,
.delete-link { color: #ccc !important; }
```

BIN
apps/bookmarks/shaarli.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 720 KiB

23
apps/bookmarks/shiori.md Normal file
View File

@ -0,0 +1,23 @@
# Shiori
- [Github repo](https://github.com/go-shiori/shiori)
- [Docs](https://github.com/go-shiori/shiori/wiki)
![Screenshot](shiori.png)
## docker-compose.yml
```yml
---
version: '3'
services:
shiori:
image: radhifadlillah/shiori
container_name: shiori
restart: unless-stopped
environment:
- TZ=Europe/Dublin
ports:
- "3010:8080"
volumes:
- ./data:/srv/shiori
```

BIN
apps/bookmarks/shiori.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 505 KiB

BIN
apps/cloud/filerun.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 KiB

53
apps/cloud/filerun.md Normal file
View File

@ -0,0 +1,53 @@
# FileRun
Mobile apps are just webdav clients.
<br>
- [Homepage](https://filerun.com/)
- [DockerHub repo](https://hub.docker.com/r/afian/filerun/)
- [Docs](https://docs.filerun.com/)
- [Demo](https://demo.filerun.co/?username=admin&password=admin)
![Screenshot](filerun.jpg)
## docker-compose.yml
```yml
version: '2'
services:
db:
image: mariadb:10.1
container_name: filerun-db
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: your_mysql_root_password
MYSQL_USER: db_user
MYSQL_PASSWORD: db_user_password_01
MYSQL_DATABASE: filerundb
volumes:
- ./data/db:/var/lib/mysql
web:
image: afian/filerun
container_name: filerun
restart: unless-stopped
environment:
FR_DB_HOST: db
FR_DB_PORT: 3306
FR_DB_NAME: filerundb
FR_DB_USER: db_user
FR_DB_PASS: db_user_password_01
APACHE_RUN_USER: www-data
APACHE_RUN_USER_ID: 33
APACHE_RUN_GROUP: www-data
APACHE_RUN_GROUP_ID: 33
depends_on:
- db
links:
- db:db
ports:
- "3090:80"
volumes:
- ./data/html:/var/www/html
- ./data/user-files:/user-files
```

82
apps/cloud/nextcloud.md Normal file
View File

@ -0,0 +1,82 @@
# NextCloud
- Mobile apps are just for files, not other apps (e.g. tasks) installed in NextCloud.
<br>
- [Homepage](https://nextcloud.com/)
- [Github repo](https://github.com/nextcloud)
- [DockerHub repo](https://hub.docker.com/_/nextcloud/)
- [Breeze dark theme](https://github.com/mwalbeck/nextcloud-breeze-dark) - some stuff doesn't work
- [Docs](https://docs.nextcloud.com/server/20/admin_manual/)
- [Demo](https://try.nextcloud.com/)
## docker-compose.yml
```yml
version: '2'
services:
app:
image: nextcloud:latest
container_name: nextcloud
restart: unless-stopped
links:
- db
- redis
ports:
- 3100:80
environment:
- MYSQL_PASSWORD=nextcloud
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=db
- TRUSTED_PROXIES= # e.g. HOST IP
- OVERWRITEPROTOCOL=https
- OVERWRITEHOST=nextcloud.domain.com
- REDIS_HOST=redis
- REDIS_HOST_PASSWORD=nextcloud # must be set, because of a bug
volumes:
- ./nextcloud:/var/www/html
- ./data:/var/www/html/data
cron:
image: nextcloud:latest
restart: unless-stopped
volumes:
- ./nextcloud:/var/www/html
entrypoint: /cron.sh
depends_on:
- db
- redis
db:
image: mariadb
container_name: nextcloud-db
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
restart: unless-stopped
volumes:
- ./db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=nextcloud
- MYSQL_PASSWORD=nextcloud
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
redis:
image: redis:alpine
container_name: nextcloud-redis
restart: unless-stopped
command: redis-server --requirepass nextcloud
environment:
- TZ=Europe/Dublin
volumes:
- ./redis:/data
expose:
- 6379
```
## Tips & Tricks
### Generate password/secret key
```sh
openssl rand -base64 32
```

48
apps/cloud/pydio.md Normal file
View File

@ -0,0 +1,48 @@
# Pydio Cells
- Overly complex and... weird.
- Has mobile apps.
<br>
- [Homepage](https://pydio.com/en/features/pydio-cells-overview)
- [Github repo](https://github.com/pydio/cells)
- [DockerHub repo](https://hub.docker.com/r/pydio/cells/)
- [Docs](https://pydio.com/en/docs/administration-guides)
## docker-compose.yml
```yml
---
version: '3'
services:
cells:
image: pydio/cells:latest
container_name: pydio
hostname: cells
restart: unless-stopped
ports:
- "3060:8080"
environment:
- CELLS_NO_TLS=0
- CELLS_BIND=0.0.0.0:8080
- CELLS_EXTERNAL=pydio.domain.com
- EXTERNAL_BIND=pydio.domain.com
volumes:
- "./datadir:/var/cells/data"
- "./workingdir:/var/cells"
mysql:
image: mysql:5.7
container_name: pydio-db
restart: unless-stopped
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: secret
MYSQL_DATABASE: cells
MYSQL_USER: pydio
MYSQL_PASSWORD: secret
command: [mysqld, --character-set-server=utf8mb4, --collation-server=utf8mb4_unicode_ci]
volumes:
- "./mysqldir:/var/lib/mysql"
```

61
apps/cloud/seafile.md Normal file
View File

@ -0,0 +1,61 @@
# Seafile
- Too simple, just raw files nothing more.
- Has mobile apps.
<br>
- [Homepage](https://www.seafile.com/en/home/)
- [Github repo](https://github.com/haiwen/seafile)
- [DockerHub repo](https://hub.docker.com/r/seafileltd/seafile-mc)
- [Docs](https://download.seafile.com/d/320e8adf90fa43ad8fee/files/?p=%2Findex.md)
![Screenshot]()
## docker-compose.yml
```yml
version: '2.0'
services:
db:
image: mariadb:10.1
container_name: seafile-mysql
environment:
- MYSQL_ROOT_PASSWORD=db_dev # Requested, set the root's password of MySQL service.
- MYSQL_LOG_CONSOLE=true
volumes:
- ./db:/var/lib/mysql # Requested, specifies the path to MySQL data persistent store.
networks:
- seafile-net
memcached:
image: memcached:1.5.6
container_name: seafile-memcached
entrypoint: memcached -m 256
networks:
- seafile-net
seafile:
image: seafileltd/seafile-mc:latest
container_name: seafile
ports:
- "8080:80"
# - "443:443" # If https is enabled, cancel the comment.
volumes:
- ./data:/shared # Requested, specifies the path to Seafile data persistent store.
environment:
- DB_HOST=db
- DB_ROOT_PASSWD=db_dev # Requested, the value shuold be root's password of MySQL service.
- TIME_ZONE=Europe/Dublin # Optional, default is UTC. Should be uncomment and set to your local time zone.
- SEAFILE_ADMIN_EMAIL=me@example.com # Specifies Seafile admin user, default is 'me@example.com'.
- SEAFILE_ADMIN_PASSWORD=asecret # Specifies Seafile admin password, default is 'asecret'.
- SEAFILE_SERVER_LETSENCRYPT=false # Whether to use https or not.
- SEAFILE_SERVER_HOSTNAME=docs.seafile.com # Specifies your host name if https is enabled.
depends_on:
- db
- memcached
networks:
- seafile-net
networks:
seafile-net:
```

15
template.md Normal file
View File

@ -0,0 +1,15 @@
#
- [Github repo]()
- [DockerHub repo]()
- [Docs]()
![Screenshot]()
## docker-compose.yml
```yml
```
## Tips & Tricks