mirror of
https://github.com/funkypenguin/geek-cookbook/
synced 2026-11-05 14:58:18 +00:00
Remove remaining references to oauth-proxy (we now have traefik-forward-auth instead!)
This commit is contained in:
1 parent
f5b1facdd2
commit
5411b1b173
31 files changed
+437
-445
No files matched your search
+25
-36
@@ -10,10 +10,10 @@ Wekan is an open-source kanban board which allows a card-based task and to-do ma
|
||||
|
||||
Wekan allows to create Boards, on which Cards can be moved around between a number of Columns. Boards can have many members, allowing for easy collaboration, just add everyone that should be able to work with you on the board to it, and you are good to go! You can assign colored Labels to cards to facilitate grouping and filtering, additionally you can add members to a card, for example to assign a task to someone.
|
||||
|
||||
There's a [video](https://www.youtube.com/watch?v=N3iMLwCNOro) of the developer showing off the app, as well as a f[unctional demo](https://wekan.indie.host/b/t2YaGmyXgNkppcFBq/wekan-fork-roadmap).
|
||||
There's a [video](https://www.youtube.com/watch?v=N3iMLwCNOro) of the developer showing off the app, as well as a [functional demo](https://wekan.indie.host/b/t2YaGmyXgNkppcFBq/wekan-fork-roadmap).
|
||||
|
||||
!!! note
|
||||
For added privacy, this design secures wekan behind an [oauth2 proxy](/reference/oauth_proxy/), so that in order to gain access to the wekan UI at all, oauth2 authentication (_to GitHub, GitLab, Google, etc_) must have already occurred.
|
||||
For added privacy, this design secures wekan behind a [traefik-forward-auth](/ha-docker-swarm/traefik-forward-auth/), so that in order to gain access to the wekan UI at all, authentication must have already occurred.
|
||||
|
||||
--8<-- "recipe-standard-ingredients.md"
|
||||
|
||||
@@ -31,15 +31,9 @@ mkdir -p {wekan-db,wekan-db-dump}
|
||||
|
||||
### Prepare environment
|
||||
|
||||
You'll need to know the following:
|
||||
Create `/var/data/config/wekan.env`, and populate with the following variables:
|
||||
|
||||
1. Choose an oauth provider, and obtain a client ID and secret
|
||||
2. Create wekan.env, and populate with the following variables
|
||||
|
||||
```bash
|
||||
OAUTH2_PROXY_CLIENT_ID=
|
||||
OAUTH2_PROXY_CLIENT_SECRET=
|
||||
OAUTH2_PROXY_COOKIE_SECRET=
|
||||
```yaml
|
||||
MONGO_URL=mongodb://wekandb:27017/wekan
|
||||
ROOT_URL=https://wekan.example.com
|
||||
MAIL_URL=smtp://wekan@wekan.example.com:password@mail.example.com:587/
|
||||
@@ -60,7 +54,6 @@ Create a docker swarm config file in docker-compose syntax (v3), something like
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
|
||||
wekandb:
|
||||
image: mongo:latest
|
||||
command: mongod --smallfiles --oplogSize 128
|
||||
@@ -70,33 +63,29 @@ services:
|
||||
- /var/data/runtime/wekan/database:/data/db
|
||||
- /var/data/wekan/database-dump:/dump
|
||||
|
||||
proxy:
|
||||
image: a5huynh/oauth2_proxy
|
||||
env_file: /var/data/config/wekan/wekan.env
|
||||
networks:
|
||||
- traefik
|
||||
- internal
|
||||
volumes:
|
||||
- /var/data/oauth_proxy/authenticated-emails.txt:/authenticated-emails.txt
|
||||
deploy:
|
||||
labels:
|
||||
- traefik.frontend.rule=Host:wekan.example.com
|
||||
- traefik.docker.network=traefik
|
||||
- traefik.port=4180
|
||||
command: |
|
||||
-cookie-secure=false
|
||||
-upstream=http://wekan:80
|
||||
-redirect-url=https://wekan.example.com
|
||||
-http-address=http://0.0.0.0:4180
|
||||
-email-domain=example.com
|
||||
-provider=github
|
||||
-authenticated-emails-file=/authenticated-emails.txt
|
||||
|
||||
wekan:
|
||||
image: wekanteam/wekan:latest
|
||||
networks:
|
||||
- internal
|
||||
- traefik_public
|
||||
env_file: /var/data/config/wekan/wekan.env
|
||||
deploy:
|
||||
labels:
|
||||
# traefik common
|
||||
- traefik.enable=true
|
||||
- traefik.docker.network=traefik_public
|
||||
|
||||
# traefikv1
|
||||
- traefik.frontend.rule=Host:wekan.example.com
|
||||
- traefik.port=4180
|
||||
|
||||
# traefikv2
|
||||
- "traefik.http.routers.wekan.rule=Host(`wekan.example.com`)"
|
||||
- "traefik.http.services.wekan.loadbalancer.server.port=4180"
|
||||
- "traefik.enable=true"
|
||||
|
||||
# Remove if you wish to access the URL directly
|
||||
- "traefik.http.routers.wekan.middlewares=forward-auth@file"
|
||||
|
||||
db-backup:
|
||||
image: mongo:latest
|
||||
@@ -118,7 +107,7 @@ services:
|
||||
- internal
|
||||
|
||||
networks:
|
||||
traefik:
|
||||
traefik_public:
|
||||
external: true
|
||||
internal:
|
||||
driver: overlay
|
||||
@@ -135,8 +124,8 @@ networks:
|
||||
|
||||
Launch the Wekan stack by running ```docker stack deploy wekan -c <path -to-docker-compose.yml>```
|
||||
|
||||
Log into your new instance at https://**YOUR-FQDN**, with user "root" and the password you specified in gitlab.env.
|
||||
Log into your new instance at `https://**YOUR-FQDN**`, with user "root" and the password you specified in `wekan.env`.
|
||||
|
||||
[^1]: If you wanted to expose the Wekan UI directly, you could remove the oauth2_proxy from the design, and move the traefik-related labels directly to the wekan container. You'd also need to add the traefik network to the wekan container.
|
||||
[^1]: If you wanted to expose the Wekan UI directly, you could remove the traefik-forward-auth from the design.
|
||||
|
||||
--8<-- "recipe-footer.md"
|
||||
Reference in new issue
Block a user