mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-02-23 12:51:54 +01:00
Optimized keykloak, mailu and css
This commit is contained in:
parent
c2975262ea
commit
657918c96e
@ -13,24 +13,6 @@ The role integrates Keycloak with PostgreSQL as a database and supports operatio
|
|||||||
- Support for running behind a reverse proxy (e.g., NGINX).
|
- Support for running behind a reverse proxy (e.g., NGINX).
|
||||||
- Automatic creation and management of Docker Compose files.
|
- Automatic creation and management of Docker Compose files.
|
||||||
|
|
||||||
## Requirements 📋
|
|
||||||
- Docker and Docker Compose must be installed on the target system.
|
|
||||||
- A working NGINX proxy for forwarding requests to Keycloak (optional).
|
|
||||||
|
|
||||||
## Tasks 🛠️
|
|
||||||
|
|
||||||
The role performs the following main tasks:
|
|
||||||
|
|
||||||
1. **Include database and proxy configuration files:**
|
|
||||||
- Integration of a PostgreSQL database.
|
|
||||||
- Setup of a reverse proxy for the domain.
|
|
||||||
|
|
||||||
2. **Generate `docker-compose.yml`:**
|
|
||||||
- Automatically generate the Docker Compose file based on templates and variables.
|
|
||||||
|
|
||||||
3. **Start Docker containers:**
|
|
||||||
- The role launches the Keycloak project using Docker Compose.
|
|
||||||
|
|
||||||
## More Information 📚
|
## More Information 📚
|
||||||
|
|
||||||
For more details about Keycloak, check out:
|
For more details about Keycloak, check out:
|
||||||
|
@ -16,3 +16,7 @@ KC_DB= postgres
|
|||||||
KC_DB_URL= jdbc:postgresql://{{database_host}}/{{database_name}}
|
KC_DB_URL= jdbc:postgresql://{{database_host}}/{{database_name}}
|
||||||
KC_DB_USERNAME= {{database_username}}
|
KC_DB_USERNAME= {{database_username}}
|
||||||
KC_DB_PASSWORD= {{database_password}}
|
KC_DB_PASSWORD= {{database_password}}
|
||||||
|
|
||||||
|
# If the initial administrator already exists and the environment variables are still present at startup, an error message stating the failed creation of the initial administrator is shown in the logs. Keycloak ignores the values and starts up correctly.
|
||||||
|
KC_BOOTSTRAP_ADMIN_USERNAME= {{administrator_username}}
|
||||||
|
KC_BOOTSTRAP_ADMIN_PASSWORD= {{administrator_password}}
|
@ -22,8 +22,8 @@
|
|||||||
- name: flush docker service
|
- name: flush docker service
|
||||||
meta: flush_handlers
|
meta: flush_handlers
|
||||||
|
|
||||||
- name: execute database migration
|
- name: create administrator account
|
||||||
command:
|
command:
|
||||||
cmd: "docker compose -p mailu exec admin flask mailu admin admin {{primary_domain}} {{applications.mailu.initial_administrator_password}}"
|
cmd: "docker compose -p mailu exec admin flask mailu admin {{administrator_username}} {{primary_domain}} {{applications.mailu.initial_administrator_password}}"
|
||||||
chdir: "{{docker_compose.directories.instance}}"
|
chdir: "{{docker_compose.directories.instance}}"
|
||||||
ignore_errors: true
|
ignore_errors: true
|
@ -50,40 +50,57 @@ HINT:
|
|||||||
|
|
||||||
/* Bootstrap Overrides (Color/Shadow Variables Only) */
|
/* Bootstrap Overrides (Color/Shadow Variables Only) */
|
||||||
:root {
|
:root {
|
||||||
--bs-black: var(--color-01); /* Original tone: Black (#000) */
|
--bs-black: var(--color-01); /* Original tone: Black (#000) */
|
||||||
--bs-white: var(--color-99); /* Original tone: White (#fff) */
|
--bs-white: var(--color-99); /* Original tone: White (#fff) */
|
||||||
--bs-gray: var(--color-50); /* Original tone: Gray (#6c757d) */
|
--bs-gray: var(--color-50); /* Original tone: Gray (#6c757d) */
|
||||||
--bs-gray-dark: var(--color-20); /* Original tone: Dark Gray (#343a40) */
|
--bs-gray-dark: var(--color-20); /* Original tone: Dark Gray (#343a40) */
|
||||||
--bs-gray-100: var(--color-95); /* Original tone: Very Light Gray (#f8f9fa) */
|
--bs-gray-100: var(--color-95); /* Original tone: Very Light Gray (#f8f9fa) */
|
||||||
--bs-gray-200: var(--color-90); /* Original tone: Lighter Gray (#e9ecef) */
|
--bs-gray-200: var(--color-90); /* Original tone: Lighter Gray (#e9ecef) */
|
||||||
--bs-gray-300: var(--color-85); /* Original tone: Light Gray (#dee2e6) */
|
--bs-gray-300: var(--color-85); /* Original tone: Light Gray (#dee2e6) */
|
||||||
--bs-gray-400: var(--color-80); /* Original tone: Gray (#ced4da) */
|
--bs-gray-400: var(--color-80); /* Original tone: Gray (#ced4da) */
|
||||||
--bs-gray-500: var(--color-70); /* Original tone: Medium Gray (#adb5bd) */
|
--bs-gray-500: var(--color-70); /* Original tone: Medium Gray (#adb5bd) */
|
||||||
--bs-gray-600: var(--color-50); /* Original tone: Gray (#6c757d) */
|
--bs-gray-600: var(--color-50); /* Original tone: Gray (#6c757d) */
|
||||||
--bs-gray-700: var(--color-40); /* Original tone: Darker Gray (#495057) */
|
--bs-gray-700: var(--color-40); /* Original tone: Darker Gray (#495057) */
|
||||||
--bs-gray-800: var(--color-20); /* Original tone: Dark Gray (#343a40) */
|
--bs-gray-800: var(--color-20); /* Original tone: Dark Gray (#343a40) */
|
||||||
--bs-gray-900: var(--color-10); /* Original tone: Very Dark Gray (#212529) */
|
--bs-gray-900: var(--color-10); /* Original tone: Very Dark Gray (#212529) */
|
||||||
--bs-primary: var(--color-65); /* Original tone: Blue (#0d6efd) */
|
--bs-primary: var(--color-65); /* Original tone: Blue (#0d6efd) */
|
||||||
--bs-light: var(--color-95); /* Original tone: Light (#f8f9fa) */
|
--bs-light: var(--color-95); /* Original tone: Light (#f8f9fa) */
|
||||||
--bs-dark: var(--color-10); /* Original tone: Dark (#212529) */
|
--bs-dark: var(--color-10); /* Original tone: Dark (#212529) */
|
||||||
--bs-primary-rgb: var(--color-rgb-65); /* Original tone: Blue (13, 110, 253) */
|
--bs-primary-rgb: var(--color-rgb-65); /* Original tone: Blue (13, 110, 253) */
|
||||||
--bs-secondary-rgb: var(--color-rgb-50); /* Original tone: Grayish (#6c757d / 108, 117, 125) */
|
--bs-secondary-rgb: var(--color-rgb-50); /* Original tone: Grayish (#6c757d / 108, 117, 125) */
|
||||||
--bs-light-rgb: var(--color-rgb-95); /* Original tone: Light (248, 249, 250) */
|
--bs-light-rgb: var(--color-rgb-95); /* Original tone: Light (248, 249, 250) */
|
||||||
--bs-dark-rgb: var(--color-rgb-10); /* Original tone: Dark (33, 37, 41) */
|
--bs-dark-rgb: var(--color-rgb-10); /* Original tone: Dark (33, 37, 41) */
|
||||||
--bs-white-rgb: var(--color-rgb-99); /* Original tone: White (255, 255, 255) */
|
--bs-white-rgb: var(--color-rgb-99); /* Original tone: White (255, 255, 255) */
|
||||||
--bs-black-rgb: var(--color-rgb-01); /* Original tone: Black (0, 0, 0) */
|
--bs-black-rgb: var(--color-rgb-01); /* Original tone: Black (0, 0, 0) */
|
||||||
--bs-body-color-rgb: var(--color-rgb-10); /* Original tone: Dark (#212529 / 33, 37, 41) */
|
--bs-body-color-rgb: var(--color-rgb-10); /* Original tone: Dark (#212529 / 33, 37, 41) */
|
||||||
--bs-body-bg-rgb: var(--color-rgb-99); /* Original tone: White (#fff / 255, 255, 255) */
|
--bs-body-bg-rgb: var(--color-rgb-99); /* Original tone: White (#fff / 255, 255, 255) */
|
||||||
--bs-body-color: var(--color-10); /* Original tone: Dark (#212529) */
|
--bs-body-color: var(--color-10); /* Original tone: Dark (#212529) */
|
||||||
--bs-body-bg: var(--color-99); /* Original tone: White (#fff) */
|
--bs-body-bg: var(--color-99); /* Original tone: White (#fff) */
|
||||||
--bs-border-color: var(--color-85); /* Original tone: Gray (#dee2e6) */
|
--bs-border-color: var(--color-85); /* Original tone: Gray (#dee2e6) */
|
||||||
--bs-link-color: var(--color-65); /* Original tone: Blue (#0d6efd) */
|
--bs-link-color: var(--color-65); /* Original tone: Blue (#0d6efd) */
|
||||||
--bs-link-hover-color: var(--color-60); /* Original tone: Darker Blue (#0a58ca) */
|
--bs-link-hover-color: var(--color-60); /* Original tone: Darker Blue (#0a58ca) */
|
||||||
--bs-code-color: var(--color-55); /* Original tone: Pink (#d63384) */
|
--bs-code-color: var(--color-55); /* Original tone: Pink (#d63384) */
|
||||||
--bs-highlight-bg: var(--color-93); /* Original tone: Light Yellow (#fff3cd) */
|
--bs-highlight-bg: var(--color-93); /* Original tone: Light Yellow (#fff3cd) */
|
||||||
--bs-list-group-bg: var(--color-40);
|
--bs-list-group-bg: var(--color-40);
|
||||||
|
|
||||||
|
--bs-emphasis-color: var(--color-01); /* Gemappt von #000 */
|
||||||
|
--bs-emphasis-color-rgb: var(--color-rgb-01); /* Gemappt von 0, 0, 0 */
|
||||||
|
--bs-secondary-color: rgba(var(--color-rgb-10), 0.75); /* Gemappt von rgba(33, 37, 41, 0.75) */
|
||||||
|
--bs-secondary-color-rgb: var(--color-rgb-10); /* Gemappt von 33, 37, 41 */
|
||||||
|
--bs-secondary-bg: var(--color-90); /* Gemappt von #e9ecef */
|
||||||
|
--bs-secondary-bg-rgb: var(--color-rgb-90); /* Gemappt von 233, 236, 239 */
|
||||||
|
--bs-tertiary-color: rgba(var(--color-rgb-10), 0.5); /* Gemappt von rgba(33, 37, 41, 0.5) */
|
||||||
|
--bs-tertiary-color-rgb: var(--color-rgb-10); /* Gemappt von 33, 37, 41 */
|
||||||
|
--bs-tertiary-bg: var(--color-95); /* Gemappt von #f8f9fa */
|
||||||
|
--bs-tertiary-bg-rgb: var(--color-rgb-95); /* Gemappt von 248, 249, 250 */
|
||||||
|
--bs-link-color-rgb: var(--color-rgb-65); /* Gemappt von 13, 110, 253 */
|
||||||
|
--bs-link-hover-color-rgb: var(--color-rgb-60); /* Gemappt von 10, 88, 202 */
|
||||||
|
--bs-highlight-color: var(--color-10); /* Gemappt von #212529 */
|
||||||
|
--bs-border-color-translucent: rgba(var(--color-rgb-01), 0.175); /* Gemappt von rgba(0, 0, 0, 0.175) */
|
||||||
|
--bs-focus-ring-color: rgba(var(--color-rgb-65), 0.25); /* Gemappt von rgba(13, 110, 253, 0.25) */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Discourse */
|
/* Discourse */
|
||||||
:root section#main{
|
:root section#main{
|
||||||
/* Base Colors */
|
/* Base Colors */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user