Compare commits

..
Author SHA1 Message Date
trav 6053df415e chore: publish 10.0.0+26.0.1 release 2024-10-23 13:30:11 -04:00
3wordchant ab009bae84 chore: publish 9.0.0+25.0.6 release 2024-10-02 13:30:05 -04:00
3wordchant b02db66093 chore: publish 8.0.1+23.0.6 release 2024-02-08 14:37:28 -03:00
3wordchant a4ce30cc5c chore: publish 8.0.0+23.0.0 release 2023-11-27 12:11:46 +00:00
3wordchant e7360c2a16 chore: publish 7.2.0+22.0.5 release 2023-11-22 15:27:32 +00:00
3wordchant 5b83f487ec Fix compose file version 2023-11-22 15:25:43 +00:00
3wordchant 3d42a26b9e Make persistent theme volume optional 2023-11-22 15:23:27 +00:00
knoflook 6aac16ebd6 chore: publish 7.1.0+22.0.5 release 2023-11-22 16:15:42 +01:00
cas a5aae68446 chore: publish 7.0.2+22.0.5 release 2023-11-09 09:47:55 -08:00
3wordchant 82f6ad5d52 chore: publish 7.0.1+22.0.4 release 2023-10-23 13:56:16 +01:00
decentral1se 04b584ab4f chore: publish 7.0.0+22.0.1 release 2023-07-20 17:04:52 +02:00
3wordchant d2b9fffc46 chore: publish 6.0.0+21.0.2 release 2023-04-12 17:34:23 -04:00
3wordchant b682264613 chore: publish 6.0.0+21.0.2 release 2023-04-12 17:17:24 -04:00
3wordchant be3980d66f chore: publish 5.1.0+20.0.3 release 2023-03-19 19:22:18 -04:00
knoflook 157d3beaab fix: put the admin password in the container, also add restore capabilities 2023-03-05 12:07:56 +01:00
knoflook d432a45c21 chore: publish 5.0.2+20.0.3 release 2023-03-02 10:44:47 +01:00
knoflook 6a085e0546 fix: change the themes directory 2023-03-02 10:43:03 +01:00
decentral1se 836abe0237 chore: publish 5.0.1+20.0.3 release 2023-02-13 08:56:00 +01:00
3wordchant 9bd0b2928c Switch to self-hosted stack-ssh-deploy image [mass update] 2023-01-21 11:49:56 -08:00
3wordchant f42183601c Fix CI by adding networks: [mass update] 2023-01-20 11:58:41 -08:00
3wordchant 04618a142b Automatically generate catalogue on release [mass update]
Re: coop-cloud/recipes-catalogue-json#4
2023-01-20 10:27:11 -08:00
3wordchant 5b306db9b7 Update abra syntax in examples (finally) [mass update] 2023-01-19 16:02:27 -08:00
3wordchant c0fab3a3a3 fix: improve DB backup 2022-12-22 19:20:30 -08:00
decentral1se 2ac47abfcd feat!: new 20.x release 2022-11-16 19:37:17 +01:00
decentral1se ef6ffd9985 feat: backup labels for mysql 2022-11-16 18:16:25 +01:00
Philipp Rothmann 38bdef2fd0 adds welcome_theme env 2022-05-18 14:54:35 +02:00
decentral1se 2de7006106 chore: publish 4.0.1+16.1.1 release 2022-02-10 11:02:13 +01:00
cellarspoon 0edb882a06 release: expand notes 2022-01-03 16:09:47 +01:00
cellarspoon 2c29c75398 release: add notes 2022-01-02 15:57:16 +01:00
cellarspoon d32ea20cff chore: publish 4.0.0+16.1.0 release 2022-01-02 15:53:12 +01:00
3wordchant 4e2c0013ce Goodbye, emojis! 😢
[ci skip]
2021-11-23 12:19:05 +02:00
3wordchant 45918d2451 Add app config tips from docs 2021-10-30 17:27:31 +02:00
decentral1se 1f2ed7932b feat: support storing themes persistently 2021-10-21 14:16:23 +02:00
decentral1se 6326aff4f0 Revert "feat: custom theme loading"
This reverts commit 3b9d0237b2.

This doesn't work because we can't get into the root account in the
entrypoint and we need that to use microdnf. Another approach is needed.
2021-10-21 14:14:16 +02:00
decentral1se f4220652a7 Merge pull request 'Custom theme loading' (#10) from custom-theme-loading into master
Reviewed-on: https://git.coopcloud.tech/coop-cloud/keycloak/pulls/10
2021-10-21 11:48:21 +00:00
decentral1se 3b9d0237b2 feat: custom theme loading 2021-10-21 12:55:39 +02:00
decentral1se b037067a2e chore: new v15 release 2021-10-12 01:07:05 +02:00
9 changed files with 114 additions and 29 deletions
+14 -6
View File
@@ -3,10 +3,12 @@ kind: pipeline
name: deploy to swarm-test.autonomic.zone name: deploy to swarm-test.autonomic.zone
steps: steps:
- name: deployment - name: deployment
image: decentral1se/stack-ssh-deploy:latest image: git.coopcloud.tech/coop-cloud/stack-ssh-deploy:latest
settings: settings:
host: swarm-test.autonomic.zone host: swarm-test.autonomic.zone
stack: keycloak stack: keycloak
networks:
- proxy
generate_secrets: true generate_secrets: true
purge: true purge: true
deploy_key: deploy_key:
@@ -23,11 +25,17 @@ trigger:
- master - master
--- ---
kind: pipeline kind: pipeline
name: recipe release name: generate recipe catalogue
steps: steps:
- name: release a new version - name: release a new version
image: thecoopcloud/drone-abra:latest image: plugins/downstream
settings: settings:
command: recipe keycloak release server: https://build.coopcloud.tech
deploy_key: token:
from_secret: abra_bot_deploy_key from_secret: drone_abra-bot_token
fork: true
repositories:
- coop-cloud/auto-recipes-catalogue-json
trigger:
event: tag
+6
View File
@@ -6,7 +6,13 @@ DOMAIN=keycloak.example.com
LETS_ENCRYPT_ENV=production LETS_ENCRYPT_ENV=production
ADMIN_USERNAME=admin ADMIN_USERNAME=admin
WELCOME_THEME=keycloak
COMPOSE_FILE="compose.yml"
SECRET_DB_ROOT_PASSWORD_VERSION=v1 SECRET_DB_ROOT_PASSWORD_VERSION=v1
SECRET_DB_PASSWORD_VERSION=v1 SECRET_DB_PASSWORD_VERSION=v1
SECRET_ADMIN_PASSWORD_VERSION=v1 SECRET_ADMIN_PASSWORD_VERSION=v1
# Enable persistent theme volume, if you want to apply a custom theme
#COMPOSE_FILE="$COMPOSE_FILE:compose.theme.yml"
+23 -6
View File
@@ -6,12 +6,12 @@
<!-- metadata --> <!-- metadata -->
* **Category**: Apps * **Category**: Apps
* **Status**: ❷💛 * **Status**: 2, beta
* **Image**: [`jboss/keycloak`](https://hub.docker.com/r/jboss/keycloak), ❶💚, upstream * **Image**: [`jboss/keycloak`](https://hub.docker.com/r/jboss/keycloak), 4, upstream
* **Healthcheck**: Yes * **Healthcheck**: Yes
* **Backups**: ? * **Backups**: ?
* **Email**: ❸🍎 * **Email**: 1
* **Tests**: ❷💛 * **Tests**: 2
* **SSO**: N/A * **SSO**: N/A
<!-- endmetadata --> <!-- endmetadata -->
@@ -21,9 +21,26 @@
2. Deploy [`coop-cloud/traefik`][cc-traefik] 2. Deploy [`coop-cloud/traefik`][cc-traefik]
3. `abra app new keycloak --secrets` (optionally with `--pass` if you'd like 3. `abra app new keycloak --secrets` (optionally with `--pass` if you'd like
to save secrets in `pass`) to save secrets in `pass`)
4. `abra app YOURAPPDOMAIN config` - be sure to change `$DOMAIN` to something that resolves to 4. `abra app config YOURAPPDOMAIN` - be sure to change `$DOMAIN` to something that resolves to
your Docker swarm box your Docker swarm box
5. `abra app YOURAPPDOMAIN deploy` 5. `abra app deploy YOURAPPDOMAIN`
## How do I setup a custom theme?
Check [this approach](https://git.autonomic.zone/ruangrupa/login.lumbung.space).
## How do I create another admin user?
- Under the `Master` realm > `Users` > `Add user`
- Create the user and set a temporary password
- Under the `Role Mappings` tab, move `admin` from `Available Roles` into `Assigned Roles`
## How do I configure Keycloak login for..
- [Nextcloud][nextcloud]
- [Peertube][peertube]
[nextcloud]: https://git.coopcloud.tech/coop-cloud/nextcloud
[peertube]: https://git.coopcloud.tech/coop-cloud/peertube
[abra]: https://git.autonomic.zone/autonomic-cooperative/abra [abra]: https://git.autonomic.zone/autonomic-cooperative/abra
[cc-traefik]: https://git.autonomic.zone/coop-cloud/traefik [cc-traefik]: https://git.autonomic.zone/coop-cloud/traefik
+10
View File
@@ -0,0 +1,10 @@
---
version: "3.8"
services:
app:
volumes:
- "themes:/opt/keycloak/themes"
volumes:
themes:
+33 -17
View File
@@ -3,7 +3,9 @@ version: "3.8"
services: services:
app: app:
image: "jboss/keycloak:14.0.0" image: "keycloak/keycloak:26.0.1"
entrypoint: >
bash -c "KEYCLOAK_ADMIN_PASSWORD=\"$$(cat /run/secrets/admin_password)\" KC_DB_PASSWORD=\"$$(cat /run/secrets/db_password)\" /opt/keycloak/bin/kc.sh start"
networks: networks:
- proxy - proxy
- internal - internal
@@ -11,20 +13,24 @@ services:
- admin_password - admin_password
- db_password - db_password
environment: environment:
- DB_ADDR=db - KC_DB=mariadb
- DB_DATABASE=keycloak - KC_DB_URL_DATABASE=keycloak
- DB_PASSWORD_FILE=/run/secrets/db_password - KC_DB_URL_HOST=db
- DB_USER=keycloak - KC_HOSTNAME=${DOMAIN}
- DB_VENDOR=mariadb - KC_PROXY=edge
- KEYCLOAK_PASSWORD_FILE=/run/secrets/admin_password - KC_SPI_CONNECTIONS_JPA_LEGACY_MIGRATION_STRATEGY=update
- KEYCLOAK_USER=${ADMIN_USERNAME} - KEYCLOAK_ADMIN=${ADMIN_USERNAME}
- PROXY_ADDRESS_FORWARDING=true - KEYCLOAK_WELCOME_THEME=${WELCOME_THEME}
healthcheck: # NOTE(3wc): disabled due to missing curl binary, see
test: ["CMD", "curl", "-f", "http://localhost:8080"] # https://git.coopcloud.tech/coop-cloud/keycloak/issues/15
interval: 30s # healthcheck:
timeout: 10s # test: ["CMD", "curl", "-f", "http://localhost:8080"]
retries: 10 # interval: 30s
start_period: 1m # timeout: 10s
# retries: 10
# start_period: 1m
volumes:
- "providers:/opt/keycloak/providers"
depends_on: depends_on:
- mariadb - mariadb
deploy: deploy:
@@ -40,10 +46,10 @@ services:
- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect" - "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect"
- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true" - "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true"
- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}" - "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}"
- "coop-cloud.${STACK_NAME}.version=2.0.0+14.0.0" - "coop-cloud.${STACK_NAME}.version=10.0.0+26.0.1"
db: db:
image: "mariadb:10.6" image: "mariadb:11.5"
environment: environment:
- MYSQL_DATABASE=keycloak - MYSQL_DATABASE=keycloak
- MYSQL_USER=keycloak - MYSQL_USER=keycloak
@@ -56,6 +62,15 @@ services:
- "mariadb:/var/lib/mysql" - "mariadb:/var/lib/mysql"
networks: networks:
- internal - internal
deploy:
labels:
backupbot.backup: "true"
backupbot.backup.path: "/tmp/dump.sql.gz"
backupbot.backup.post-hook: "rm -f /tmp/dump.sql.gz"
backupbot.backup.pre-hook: "sh -c 'mysqldump -u root -p\"$$(cat /run/secrets/db_root_password)\" keycloak | gzip > /tmp/dump.sql.gz'"
backupbot.restore.pre-hook: "sh -c 'cd /tmp && gzip -d dump.sql.gz'"
backupbot.restore: "true"
backupbot.restore.post-hook: "sh -c 'mysql -u root -p\"$$(cat /run/secrets/db_root_password)\" keycloak < /tmp/dump.sql && rm -f /tmp/dump.sql'"
networks: networks:
internal: internal:
@@ -75,3 +90,4 @@ secrets:
volumes: volumes:
mariadb: mariadb:
providers:
+12
View File
@@ -0,0 +1,12 @@
This major release comes with a blog post about a CVE:
https://www.keycloak.org/2021/12/cve.html
Not all versions are affected but they're suggesting that people upgrade soon.
As per usual, this upgrade didn't go too smoothly and I ended up having to
undeploy and deploy the new versions. The healtcheck kept failing on the new
instance when trying to deploy alongside the existing old version. Idk, some
docker weirdness.
No app data errors discovered after upgrade.
+9
View File
@@ -0,0 +1,9 @@
You'll need to remove `/auth/` from your app SSO URLs, e.g.
https://foo.example.com/auth/realms/foo/protocol/openid-connect/auth
Would become:
https://foo.example.com/realms/foo/protocol/openid-connect/auth
-- decentral1se @ Autonomic
+2
View File
@@ -0,0 +1,2 @@
Healthchecks are disabled, see
https://git.coopcloud.tech/coop-cloud/keycloak/issues/15
+5
View File
@@ -0,0 +1,5 @@
A persistent volume for themes is now optional, and not enabled by default.
If you are using a custom theme, consult the recipe `.env.sample` to see the new
variables you need to add. You can use `abra app check ...` to verify that
they've been added correctly.