Merge pull request #219 from mother-of-all-self-hosting/neko

Add Neko
This commit is contained in:
Slavi Pantaleev 2024-07-02 21:04:19 +03:00 committed by GitHub
commit f164e7fb1f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 94 additions and 0 deletions

46
docs/services/neko.md Normal file
View file

@ -0,0 +1,46 @@
# n.eko
[n.eko](https://neko.m1k1o.net/) is a self-hosted virtual browser, that this playbook can install, powered by the [mother-of-all-self-hosting/ansible-role-neko](https://github.com/mother-of-all-self-hosting/ansible-role-neko) Ansible role.
**WARNING** The neko service will run in a container with root privileges, no dropped capabilities and will be able to write inside the container. This seems to be a neccessary deviation from the usual security standards in this playbook.
## Dependencies
This service requires the following other services:
- a [Traefik](traefik.md) reverse-proxy server
## Configuration
To enable this service, add the following configuration to your `vars.yml` file and re-run the [installation](../installing.md) process:
```yaml
########################################################################
# #
# neko #
# #
########################################################################
neko_enabled: true
neko_hostname: 'neko.example.org'
neko_password: 'SECURE_PASSWORD'
neko_password_admin: 'SUPER_SECURE_PASSWORD'
########################################################################
# #
# /neko #
# #
########################################################################
```
## Advanced configuration
There are different flavours of neko and while `firefox` is the default, you can try others by setting
```yaml
neko_version: "kde"
```
All available tags can be found on [Dockerhub](https://hub.docker.com/r/m1k1o/neko/tags)

View file

@ -50,6 +50,7 @@
| [Mobilizon](https://joinmobilizon.org/en/) | An ActivityPub/Fediverse server to create and share events. | [Link](services/mobilizon.md) |
| [n8n](https://n8n.io/) | Workflow automation for technical people. | [Link](services/n8n.md) |
| [Navidrome](https://www.navidrome.org/) | [Subsonic-API](http://www.subsonic.org/pages/api.jsp) compatible music server | [Link](services/navidrome.md)
| [n.eko](https://neko.m1k1o.net/) | A self-hosted virtual browser or even desktop environment | [Link](services/neko.md) |
| [NetBox](https://docs.netbox.dev/en/stable/) | Web application that provides [IP address management (IPAM)](https://en.wikipedia.org/wiki/IP_address_management) and [data center infrastructure management (DCIM)](https://en.wikipedia.org/wiki/Data_center_management#Data_center_infrastructure_management) functionality | [Link](services/netbox.md) |
| [Nextcloud](https://nextcloud.com/) | The most popular self-hosted collaboration solution for tens of millions of users at thousands of organizations across the globe. | [Link](services/nextcloud.md) |
| [Outline](https://www.getoutline.com/) | An open-source knowledge base for growing teams. | [Link](services/outline.md) |

View file

@ -434,6 +434,11 @@ mash_playbook_devture_systemd_service_manager_services_list_auto_itemized:
{{ ({'name': (navidrome_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'navidrome']} if navidrome_enabled else omit) }}
# /role-specific:navidrome
# role-specific:neko
- |-
{{ ({'name': (neko_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'neko']} if neko_enabled else omit) }}
# /role-specific:neko
# role-specific:netbox
- |-
{{ ({'name': (netbox_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'netbox', 'netbox-server']} if netbox_enabled else omit) }}
@ -3784,6 +3789,40 @@ navidrome_container_labels_traefik_tls_certResolver: "{{ devture_traefik_certRes
# /role-specific:navidrome
# role-specific:neko
########################################################################
# #
# neko #
# #
########################################################################
neko_enabled: false
neko_identifier: "{{ mash_playbook_service_identifier_prefix }}neko"
neko_uid: "{{ mash_playbook_uid }}"
neko_gid: "{{ mash_playbook_gid }}"
neko_base_path: "{{ mash_playbook_base_path }}/{{ mash_playbook_service_base_directory_name_prefix }}neko"
neko_container_additional_networks_auto: |
{{
([mash_playbook_reverse_proxyable_services_additional_network] if mash_playbook_reverse_proxyable_services_additional_network else [])
}}
neko_container_labels_traefik_enabled: "{{ mash_playbook_traefik_labels_enabled }}"
neko_container_labels_traefik_docker_network: "{{ mash_playbook_reverse_proxyable_services_additional_network }}"
neko_container_labels_traefik_entrypoints: "{{ devture_traefik_entrypoint_primary }}"
neko_container_labels_traefik_tls_certResolver: "{{ devture_traefik_certResolver_primary }}"
########################################################################
# #
# /neko #
# #
########################################################################
# /role-specific:neko
# role-specific:nextcloud
########################################################################

View file

@ -212,6 +212,10 @@
version: v0.52.5-0
name: navidrome
activation_prefix: navidrome_
- src: git+https://github.com/mother-of-all-self-hosting/ansible-role-neko.git
version: v2.8.12-0
name: neko
activation_prefix: neko_
- src: git+https://github.com/mother-of-all-self-hosting/ansible-role-netbox.git
version: v3.7.0-2.8.0-0
name: netbox

View file

@ -275,6 +275,10 @@
- role: galaxy/navidrome
# /role-specific:navidrome
# role-specific:neko
- role: galaxy/neko
# /role-specific:neko
# role-specific:netbox
- role: galaxy/netbox
# /role-specific:netbox