Refactor .bashrc welcome message logic, remove unused dotfiles symlink, add Unifi Network Application service and MongoDB setup in Ansible, update flake.lock for dependencies, and modify authorized_keys for SSH access.
This commit is contained in:
2
.bashrc
2
.bashrc
@@ -181,6 +181,6 @@ if [ -f $HOME/.bashrc.local ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Display a welcome message for interactive shells
|
# Display a welcome message for interactive shells
|
||||||
if [ -t 1 ] && command -v helloworld &> /dev/null; then
|
if [ -t 1 ]; then
|
||||||
helloworld
|
helloworld
|
||||||
fi
|
fi
|
||||||
|
@@ -1 +0,0 @@
|
|||||||
dotf
|
|
@@ -88,3 +88,7 @@
|
|||||||
enabled: true
|
enabled: true
|
||||||
hosts:
|
hosts:
|
||||||
- mennos-server
|
- mennos-server
|
||||||
|
- name: unifi-network-application
|
||||||
|
enabled: true
|
||||||
|
hosts:
|
||||||
|
- mennos-cloud-server
|
||||||
|
@@ -3,8 +3,6 @@ services:
|
|||||||
container_name: 'echoip'
|
container_name: 'echoip'
|
||||||
image: 'mpolden/echoip:latest'
|
image: 'mpolden/echoip:latest'
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
ports:
|
|
||||||
- "8080:8080"
|
|
||||||
extra_hosts:
|
extra_hosts:
|
||||||
- "host.docker.internal:host-gateway"
|
- "host.docker.internal:host-gateway"
|
||||||
networks:
|
networks:
|
||||||
|
@@ -0,0 +1,54 @@
|
|||||||
|
services:
|
||||||
|
unifi-controller:
|
||||||
|
image: linuxserver/unifi-network-application:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "8080:8080" # Device communication
|
||||||
|
- "8443:8443" # Controller GUI / API
|
||||||
|
- "3478:3478/udp" # STUN
|
||||||
|
- "10001:10001/udp" # AP discovery
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
- MONGO_USER=unifi
|
||||||
|
- MONGO_PASS=unifi
|
||||||
|
- MONGO_HOST=unifi-db
|
||||||
|
- MONGO_PORT=27017
|
||||||
|
- MONGO_DBNAME=unifi
|
||||||
|
- MONGO_AUTHSOURCE=admin
|
||||||
|
volumes:
|
||||||
|
- {{ unifi_network_application_data_dir }}/data:/config
|
||||||
|
depends_on:
|
||||||
|
- unifi-db
|
||||||
|
networks:
|
||||||
|
- unifi-network
|
||||||
|
- caddy_network
|
||||||
|
sysctls:
|
||||||
|
- net.ipv6.conf.all.disable_ipv6=1
|
||||||
|
|
||||||
|
unifi-db:
|
||||||
|
image: mongo:6.0
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- {{ unifi_network_application_data_dir }}/db:/data/db
|
||||||
|
- {{ unifi_network_application_data_dir }}/init-mongo.sh:/docker-entrypoint-initdb.d/init-mongo.sh:ro
|
||||||
|
environment:
|
||||||
|
- MONGO_INITDB_ROOT_USERNAME=root
|
||||||
|
- MONGO_INITDB_ROOT_PASSWORD=root
|
||||||
|
- MONGO_INITDB_DATABASE=unifi
|
||||||
|
- MONGO_USER=unifi
|
||||||
|
- MONGO_PASS=unifi
|
||||||
|
- MONGO_DBNAME=unifi
|
||||||
|
- MONGO_AUTHSOURCE=admin
|
||||||
|
networks:
|
||||||
|
- unifi-network
|
||||||
|
sysctls:
|
||||||
|
- net.ipv6.conf.all.disable_ipv6=1
|
||||||
|
|
||||||
|
networks:
|
||||||
|
unifi-network:
|
||||||
|
driver: bridge
|
||||||
|
caddy_network:
|
||||||
|
external: true
|
||||||
|
name: caddy_default
|
@@ -0,0 +1,78 @@
|
|||||||
|
---
|
||||||
|
- name: Deploy Unifi Network App service
|
||||||
|
block:
|
||||||
|
- name: Set Unifi Network App directories
|
||||||
|
ansible.builtin.set_fact:
|
||||||
|
unifi_network_application_data_dir: "/mnt/object_storage/services/unifi_network_application"
|
||||||
|
unifi_network_application_service_dir: "{{ ansible_env.HOME }}/services/unifi_network_application"
|
||||||
|
|
||||||
|
- name: Create Unifi Network App directories
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: "{{ unifi_network_application_dir }}"
|
||||||
|
state: directory
|
||||||
|
mode: "0755"
|
||||||
|
loop:
|
||||||
|
- "{{ unifi_network_application_data_dir }}"
|
||||||
|
- "{{ unifi_network_application_data_dir }}/data"
|
||||||
|
- "{{ unifi_network_application_data_dir }}/db"
|
||||||
|
- "{{ unifi_network_application_service_dir }}"
|
||||||
|
loop_control:
|
||||||
|
loop_var: unifi_network_application_dir
|
||||||
|
|
||||||
|
- name: Create MongoDB initialization script
|
||||||
|
ansible.builtin.copy:
|
||||||
|
content: |
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if which mongosh > /dev/null 2>&1; then
|
||||||
|
mongo_init_bin='mongosh'
|
||||||
|
else
|
||||||
|
mongo_init_bin='mongo'
|
||||||
|
fi
|
||||||
|
"${mongo_init_bin}" <<EOF
|
||||||
|
use ${MONGO_AUTHSOURCE}
|
||||||
|
db.auth("${MONGO_INITDB_ROOT_USERNAME}", "${MONGO_INITDB_ROOT_PASSWORD}")
|
||||||
|
db.createUser({
|
||||||
|
user: "${MONGO_USER}",
|
||||||
|
pwd: "${MONGO_PASS}",
|
||||||
|
roles: [
|
||||||
|
{ db: "${MONGO_DBNAME}", role: "dbOwner" },
|
||||||
|
{ db: "${MONGO_DBNAME}_stat", role: "dbOwner" },
|
||||||
|
{ db: "${MONGO_DBNAME}_audit", role: "dbOwner" }
|
||||||
|
]
|
||||||
|
})
|
||||||
|
EOF
|
||||||
|
dest: "{{ unifi_network_application_data_dir }}/init-mongo.sh"
|
||||||
|
mode: "0755"
|
||||||
|
register: unifi_mongo_init_script
|
||||||
|
|
||||||
|
- name: Deploy Unifi Network App docker-compose.yml
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: docker-compose.yml.j2
|
||||||
|
dest: "{{ unifi_network_application_service_dir }}/docker-compose.yml"
|
||||||
|
mode: "0644"
|
||||||
|
register: unifi_network_application_compose
|
||||||
|
|
||||||
|
- name: Clean MongoDB database for fresh initialization
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: "{{ unifi_network_application_data_dir }}/db"
|
||||||
|
state: absent
|
||||||
|
when: unifi_mongo_init_script.changed
|
||||||
|
|
||||||
|
- name: Recreate MongoDB database directory
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: "{{ unifi_network_application_data_dir }}/db"
|
||||||
|
state: directory
|
||||||
|
mode: "0755"
|
||||||
|
when: unifi_mongo_init_script.changed
|
||||||
|
|
||||||
|
- name: Stop Unifi Network App service
|
||||||
|
ansible.builtin.command: docker compose -f "{{ unifi_network_application_service_dir }}/docker-compose.yml" down --remove-orphans
|
||||||
|
when: unifi_network_application_compose.changed or unifi_mongo_init_script.changed
|
||||||
|
|
||||||
|
- name: Start Unifi Network App service
|
||||||
|
ansible.builtin.command: docker compose -f "{{ unifi_network_application_service_dir }}/docker-compose.yml" up -d
|
||||||
|
when: unifi_network_application_compose.changed or unifi_mongo_init_script.changed
|
||||||
|
tags:
|
||||||
|
- services
|
||||||
|
- unifi
|
12
config/home-manager/flake.lock
generated
12
config/home-manager/flake.lock
generated
@@ -7,11 +7,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1752175309,
|
"lastModified": 1752391422,
|
||||||
"narHash": "sha256-g/f7sW8EH5qRRJF95+hwWj+AzOMlw4zs04Ei5DWSRlU=",
|
"narHash": "sha256-ReX0NG6nIAEtQQjLqeu1vUU2jjZuMlpymNtb4VQYeus=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "524da5f6c0bf11bb0d5590046276423a28b9453e",
|
"rev": "c26266790678863cce8e7460fdbf0d80991b1906",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -23,11 +23,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751943650,
|
"lastModified": 1752308619,
|
||||||
"narHash": "sha256-7orTnNqkGGru8Je6Un6mq1T8YVVU/O5kyW4+f9C1mZQ=",
|
"narHash": "sha256-pzrVLKRQNPrii06Rm09Q0i0dq3wt2t2pciT/GNq5EZQ=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "88983d4b665fb491861005137ce2b11a9f89f203",
|
"rev": "650e572363c091045cdbc5b36b0f4c1f614d3058",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@@ -9,3 +9,5 @@ ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIE22Hfx8wgkc57TXX1TCMHcNrCdjbfog5QeHFJfl7IeD
|
|||||||
|
|
||||||
# Menno's Server (rsync mostly)
|
# Menno's Server (rsync mostly)
|
||||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMwyFxs+Zva2W2Viu9dzznFR9CfsiRWM1gxxvD5FUhfb menno@mennos-server
|
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMwyFxs+Zva2W2Viu9dzznFR9CfsiRWM1gxxvD5FUhfb menno@mennos-server
|
||||||
|
|
||||||
|
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM+sKpcREOUjwMMSzEWAso6830wbOi8kUxqpuXWw5gHr
|
||||||
|
Reference in New Issue
Block a user