basic config
This commit is contained in:
2
back
2
back
Submodule back updated: 76151d2ebc...61f3a532eb
22
config/hydra/hydra.yml
Normal file
22
config/hydra/hydra.yml
Normal file
@ -0,0 +1,22 @@
|
||||
serve:
|
||||
cookies:
|
||||
same_site_mode: Lax
|
||||
|
||||
urls:
|
||||
self:
|
||||
issuer: http://127.0.0.1:4444
|
||||
consent: http://id.logidex.ru/consent
|
||||
login: http://id.logidex.ru/login
|
||||
logout: http://id.logidex.ru/logout
|
||||
|
||||
secrets:
|
||||
system:
|
||||
- youReallyNeedToChangeThis
|
||||
|
||||
oidc:
|
||||
subject_identifiers:
|
||||
supported_types:
|
||||
- pairwise
|
||||
- public
|
||||
pairwise:
|
||||
salt: youReallyNeedToChangeThis
|
||||
58
config/nginx/nginx.conf
Normal file
58
config/nginx/nginx.conf
Normal file
@ -0,0 +1,58 @@
|
||||
upstream hydra_public_api {
|
||||
server hydra:4444;
|
||||
server hydra:4444;
|
||||
}
|
||||
upstream hydra_admin_api {
|
||||
server hydra:4445;
|
||||
server hydra:4445;
|
||||
}
|
||||
upstream frontend {
|
||||
server front:3000;
|
||||
server front:3000;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name oauth2.logidex.ru;
|
||||
location ~ ^/(admin|clients|keys|health|metrics|version|oauth2/auth/requests|oauth2/introspect|oauth2/flush)/? {
|
||||
set $allow 0;
|
||||
if ($remote_addr ~* "172.28.0.*") {
|
||||
set $allow 1;
|
||||
}
|
||||
if ($arg_secret = "CHANGE-ME-INSECURE-PASSWORD") {
|
||||
set $allow 1;
|
||||
}
|
||||
if ($allow = 0) {
|
||||
return 403;
|
||||
}
|
||||
|
||||
proxy_pass http://hydra_admin_api;
|
||||
proxy_redirect off;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto;
|
||||
}
|
||||
|
||||
location ~ ^/(.well-known|oauth2/auth|oauth2/token|oauth2/sessions|oauth2/revoke|oauth2/fallbacks/consent|oauth2/fallbacks/error|userinfo)/? {
|
||||
proxy_pass http://hydra_public_api;
|
||||
proxy_redirect off;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name id.logidex.ru;
|
||||
|
||||
location / {
|
||||
proxy_pass http://frontend;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
}
|
||||
}
|
||||
59
docker-compose.yml
Normal file
59
docker-compose.yml
Normal file
@ -0,0 +1,59 @@
|
||||
services:
|
||||
hydra:
|
||||
image: oryd/hydra:v2.3.0
|
||||
command: serve -c /etc/config/hydra/hydra.yml all --dev
|
||||
depends_on:
|
||||
- hydra-migrate
|
||||
- postgres
|
||||
volumes:
|
||||
- type: bind
|
||||
source: ./config/hydra
|
||||
target: /etc/config/hydra
|
||||
networks:
|
||||
- appnet
|
||||
environment:
|
||||
- DSN=postgres://hydra:secret@postgres:5432/hydra?sslmode=disable&max_conns=20&max_idle_conns=4
|
||||
hydra-migrate:
|
||||
image: oryd/hydra:v2.3.0
|
||||
command: migrate -c /etc/config/hydra/hydra.yml sql up -e --yes
|
||||
volumes:
|
||||
- type: bind
|
||||
source: ./config/hydra
|
||||
target: /etc/config/hydra
|
||||
networks:
|
||||
- appnet
|
||||
environment:
|
||||
- DSN=postgres://hydra:secret@postgres:5432/hydra?sslmode=disable&max_conns=20&max_idle_conns=4
|
||||
depends_on:
|
||||
- postgres
|
||||
nginx:
|
||||
image: nginx:latest
|
||||
volumes:
|
||||
- type: bind
|
||||
source: ./config/nginx/nginx.conf
|
||||
target: /etc/nginx/conf.d/default.conf
|
||||
read_only: true
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
depends_on:
|
||||
- hydra
|
||||
- front
|
||||
networks:
|
||||
- appnet
|
||||
postgres:
|
||||
image: postgres:17
|
||||
environment:
|
||||
- POSTGRES_USER=hydra
|
||||
- POSTGRES_PASSWORD=secret
|
||||
- POSTGRES_DB=hydra
|
||||
networks:
|
||||
- appnet
|
||||
front:
|
||||
image: git.logidex.ru/aserbin/logidex-id-frontend:latest
|
||||
environment:
|
||||
- NODE_ENV=production
|
||||
networks:
|
||||
- appnet
|
||||
networks:
|
||||
appnet:
|
||||
Reference in New Issue
Block a user