mirror of
https://github.com/funkypenguin/geek-cookbook/
synced 2025-12-14 10:16:27 +00:00
Add Ghost
This commit is contained in:
BIN
manuscript/images/ghost.png
Normal file
BIN
manuscript/images/ghost.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 282 KiB |
BIN
manuscript/images/kanboard.png
Normal file
BIN
manuscript/images/kanboard.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 42 KiB |
66
manuscript/recipies/ghost.md
Normal file
66
manuscript/recipies/ghost.md
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
# Ghost
|
||||||
|
|
||||||
|
[Ghost](https://ghost.org) is "a fully open source, hackable platform for building and running a modern online publication."
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Ingredients
|
||||||
|
|
||||||
|
1. [Docker swarm cluster](/ha-docker-swarm/) with [persistent shared storage](/ha-docker-swarm/shared-storage-ceph.md)
|
||||||
|
2. [Traefik](/ha-docker-swarm/traefik) configured per design
|
||||||
|
|
||||||
|
## Preparation
|
||||||
|
|
||||||
|
### Setup data locations
|
||||||
|
|
||||||
|
Create the location for the bind-mount of the application data, so that it's persistent:
|
||||||
|
|
||||||
|
```
|
||||||
|
mkdir -p /var/data/ghost
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
### Setup Docker Swarm
|
||||||
|
|
||||||
|
Create a docker swarm config file in docker-compose syntax (v3), something like this:
|
||||||
|
|
||||||
|
```
|
||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
ghost:
|
||||||
|
image: ghost:1-alpine
|
||||||
|
volumes:
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- /var/data/ghost/:/var/lib/ghost/content
|
||||||
|
networks:
|
||||||
|
- traefik
|
||||||
|
deploy:
|
||||||
|
labels:
|
||||||
|
- traefik.frontend.rule=Host:ghost.example.com
|
||||||
|
- traefik.docker.network=traefik
|
||||||
|
- traefik.port=2368
|
||||||
|
|
||||||
|
networks:
|
||||||
|
traefik:
|
||||||
|
external: true
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Serving
|
||||||
|
|
||||||
|
### Launch Ghost stack
|
||||||
|
|
||||||
|
Launch the Ghost stack by running ```docker stack deploy ghost -c <path -to-docker-compose.yml>```
|
||||||
|
|
||||||
|
Create your first administrative account at https://**YOUR-FQDN**/admin/
|
||||||
|
|
||||||
|
## Chef's Notes
|
||||||
|
|
||||||
|
1. If I wasn't committed to a [static-site-generated blog](https://www.funkypenguin.co.nz/blog/), Ghost is the platform I'd use for my blog.
|
||||||
|
2. A default using the SQlite database takes 548k of space:
|
||||||
|
```
|
||||||
|
[root@ds1 ghost]# du -sh /var/data/ghost/
|
||||||
|
548K /var/data/ghost/
|
||||||
|
[root@ds1 ghost]#
|
||||||
|
```
|
||||||
74
manuscript/recipies/kanboard.md
Normal file
74
manuscript/recipies/kanboard.md
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
# Kanboard
|
||||||
|
|
||||||
|
Kanboard is a Kanban tool, developed by [Frédéric Guillot](https://github.com/fguillot). (Who also happens to be the developer of my favorite RSS reader, [Miniflux](/recipies/miniflux/))
|
||||||
|
|
||||||
|
Features include:
|
||||||
|
|
||||||
|
* Visualize your work
|
||||||
|
* Limit your work in progress to be more efficient
|
||||||
|
* Customize your boards according to your business activities
|
||||||
|
* Multiple projects with the ability to drag and drop tasks
|
||||||
|
* Reports and analytics
|
||||||
|
* Fast and simple to use
|
||||||
|
* Access from anywhere with a modern browser
|
||||||
|
* Plugins and integrations with external services
|
||||||
|
* Free, open source and self-hosted
|
||||||
|
* Super simple installation
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Ingredients
|
||||||
|
|
||||||
|
1. [Docker swarm cluster](/ha-docker-swarm/) with [persistent shared storage](/ha-docker-swarm/shared-storage-ceph.md)
|
||||||
|
2. [Traefik](/ha-docker-swarm/traefik) configured per design
|
||||||
|
|
||||||
|
## Preparation
|
||||||
|
|
||||||
|
### Setup data locations
|
||||||
|
|
||||||
|
Create the location for the bind-mount of the application data, so that it's persistent:
|
||||||
|
|
||||||
|
```
|
||||||
|
mkdir -p /var/data/kanboard
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
### Setup Docker Swarm
|
||||||
|
|
||||||
|
Create a docker swarm config file in docker-compose syntax (v3), something like this:
|
||||||
|
|
||||||
|
```
|
||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
kanboard:
|
||||||
|
image: kanboard/kanboard
|
||||||
|
volumes:
|
||||||
|
- /var/data/kanboard/data:/var/www/app/data
|
||||||
|
- /var/data/kanboard/plugins:/var/www/app/plugins
|
||||||
|
networks:
|
||||||
|
- traefik
|
||||||
|
deploy:
|
||||||
|
labels:
|
||||||
|
- traefik.frontend.rule=Host:kanboard.example.com
|
||||||
|
- traefik.docker.network=traefik
|
||||||
|
- traefik.port=80
|
||||||
|
|
||||||
|
networks:
|
||||||
|
traefik:
|
||||||
|
external: true
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Serving
|
||||||
|
|
||||||
|
### Launch Kanboard stack
|
||||||
|
|
||||||
|
Launch the Kanboard stack by running ```docker stack deploy kanboard -c <path -to-docker-compose.yml>```
|
||||||
|
|
||||||
|
Log into your new instance at https://**YOUR-FQDN**. Default credentials are admin/admin, after which you can change (under 'profile') and add more users.
|
||||||
|
|
||||||
|
## Chef's Notes
|
||||||
|
|
||||||
|
1. The default theme can be significantly improved by applying the [ThemePlus](https://github.com/phsteffen/kanboard-themeplus) plugin.
|
||||||
|
2. Kanboard becomes more useful when you integrate in/outbound email with [MailGun](https://github.com/kanboard/plugin-mailgun), [SendGrid](https://github.com/kanboard/plugin-sendgrid), or [Postmark](https://github.com/kanboard/plugin-postmark).
|
||||||
@@ -57,7 +57,7 @@ networks:
|
|||||||
|
|
||||||
### Launch Miniflux stack
|
### Launch Miniflux stack
|
||||||
|
|
||||||
Launch the Huginn stack by running ```docker stack deploy miniflux -c <path -to-docker-compose.yml>```
|
Launch the Miniflux stack by running ```docker stack deploy miniflux -c <path -to-docker-compose.yml>```
|
||||||
|
|
||||||
Log into your new instance at https://**YOUR-FQDN**. Default credentials are admin/admin, after which you can change (under 'profile') and add more users.
|
Log into your new instance at https://**YOUR-FQDN**. Default credentials are admin/admin, after which you can change (under 'profile') and add more users.
|
||||||
|
|
||||||
|
|||||||
@@ -35,14 +35,16 @@ pages:
|
|||||||
- Docker Swarm Mode: ha-docker-swarm/docker-swarm-mode.md
|
- Docker Swarm Mode: ha-docker-swarm/docker-swarm-mode.md
|
||||||
- Mail Server: recipies/mail.md
|
- Mail Server: recipies/mail.md
|
||||||
- Chef's Favorites:
|
- Chef's Favorites:
|
||||||
- Wekan: recipies/wekan.md
|
|
||||||
- Huginn: recipies/huginn.md
|
- Huginn: recipies/huginn.md
|
||||||
|
- Kanboard: recipies/kanboard.md
|
||||||
- Miniflux: recipies/miniflux.md
|
- Miniflux: recipies/miniflux.md
|
||||||
- Menu:
|
- Menu:
|
||||||
- Tiny Tiny RSS: recipies/tiny-tiny-rss.md
|
- Ghost: recipies/ghost.md
|
||||||
- GitLab: recipies/gitlab.md
|
- GitLab: recipies/gitlab.md
|
||||||
- GitLab Runner: recipies/gitlab-runner.md
|
- GitLab Runner: recipies/gitlab-runner.md
|
||||||
- Piwik: recipies/piwik.md
|
- Piwik: recipies/piwik.md
|
||||||
|
- Wekan: recipies/wekan.md
|
||||||
|
- Tiny Tiny RSS: recipies/tiny-tiny-rss.md
|
||||||
- Reference:
|
- Reference:
|
||||||
- OAuth Proxy: reference/oauth_proxy.md
|
- OAuth Proxy: reference/oauth_proxy.md
|
||||||
- Networks: reference/networks.md
|
- Networks: reference/networks.md
|
||||||
|
|||||||
Reference in New Issue
Block a user