diff --git a/docs/services/neko.md b/docs/services/neko.md new file mode 100644 index 0000000..164fede --- /dev/null +++ b/docs/services/neko.md @@ -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) + diff --git a/docs/supported-services.md b/docs/supported-services.md index f815064..4fe017e 100644 --- a/docs/supported-services.md +++ b/docs/supported-services.md @@ -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) | diff --git a/templates/group_vars_mash_servers b/templates/group_vars_mash_servers index 87826e6..7175354 100644 --- a/templates/group_vars_mash_servers +++ b/templates/group_vars_mash_servers @@ -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 ######################################################################## diff --git a/templates/requirements.yml b/templates/requirements.yml index f9b79d2..262c3ef 100644 --- a/templates/requirements.yml +++ b/templates/requirements.yml @@ -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 diff --git a/templates/setup.yml b/templates/setup.yml index 1d24d4c..42b6d6f 100644 --- a/templates/setup.yml +++ b/templates/setup.yml @@ -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