Author SHA1 Message Date
westfarn 6218f62408 Fix SearxNG crash loop: make settings.yml readable inside the container.
Container runs as non-root; mode 0640 owned by westfarn caused
PermissionError on /etc/searxng/settings.yml and a restart loop.
Also lengthen the default secret_key to >= 32 chars.
2026-08-02 13:42:58 -05:00
westfarn f1f96e49b1 Deploy SearxNG on ai-server-4080 for chat_backend grounded search (#10).
Sync runner checkout / sync (pull_request) Successful in 6s
Add roles/searxng (compose + JSON-enabled settings), gate with searxng_stack
on ai-server-4080, open UFW 8088/tcp from the LAN. Port 8088 avoids the
dta_webapp :8080 clash; chat_backend must use SEARXNG_BASE_URL=http://10.0.0.128:8088.
2026-08-02 13:23:22 -05:00
2 changed files with 5 additions and 3 deletions
+2 -1
View File
@@ -13,7 +13,8 @@ searxng_container_port: 8080
searxng_base_url: "http://{{ ansible_host }}:{{ searxng_host_port }}/" searxng_base_url: "http://{{ ansible_host }}:{{ searxng_host_port }}/"
# Override via host_vars or vault; must be stable across restarts. # Override via host_vars or vault; must be stable across restarts.
searxng_secret_key: "CHANGE_ME_SEARXNG_SECRET" # SearxNG expects a long random string (use >= 32 chars).
searxng_secret_key: "change-me-searxng-secret-key-32chars"
# LAN CIDR allowed to hit the JSON API (same pattern as observability). # LAN CIDR allowed to hit the JSON API (same pattern as observability).
searxng_ufw_from: "{{ ufw_ssh_allowed_network }}" searxng_ufw_from: "{{ ufw_ssh_allowed_network }}"
+3 -2
View File
@@ -8,7 +8,7 @@
state: directory state: directory
owner: "{{ admin_user }}" owner: "{{ admin_user }}"
group: "{{ admin_user }}" group: "{{ admin_user }}"
mode: "0750" mode: "0755"
- name: searxng | settings.yml - name: searxng | settings.yml
ansible.builtin.template: ansible.builtin.template:
@@ -16,7 +16,8 @@
dest: "{{ searxng_dir }}/settings.yml" dest: "{{ searxng_dir }}/settings.yml"
owner: "{{ admin_user }}" owner: "{{ admin_user }}"
group: "{{ admin_user }}" group: "{{ admin_user }}"
mode: "0640" # Container runs as non-root searxng UID — must be world-readable (#10).
mode: "0644"
register: _searxng_settings register: _searxng_settings
- name: searxng | compose file - name: searxng | compose file