diff --git a/README.md b/README.md
index e966c11..668388c 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,40 @@
-PassLocker
+# PassLocker
+
+Another secret keys storage tool.
+> Please **use this project locally** for more security.
+
+**Content:**
+1. [Technology stack](#stack)
+2. [Download the project](#download)
+3. [Setup environment variables](#envs)
+4. [Run with Docker](#run)
+---------
+## Technology stack
+[![FastAPI](https://img.shields.io/badge/FastAPI-005571?style=for-the-badge&logo=fastapi)](https://fastapi.tiangolo.com/)[![Angular](https://img.shields.io/badge/angular-%23DD0031.svg?style=for-the-badge&logo=angular&logoColor=white)](https://angular.io/)[![Postgres](https://img.shields.io/badge/postgres-%23316192.svg?style=for-the-badge&logo=postgresql&logoColor=white)](https://www.postgresql.org/)[![Nginx](https://img.shields.io/badge/nginx-%23009639.svg?style=for-the-badge&logo=nginx&logoColor=white)](https://nginx.org/)[![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge&logo=docker&logoColor=white)](https://www.docker.com/)
+
+## Download
+```
+git clone https://github.com/TheDim0n/PassLocker.git passlocker
+cd passlocker
+git submodule update --init
+```
+
+## Environments
+Create `.env` file in project directory:
+```
+SECRET_KEY= # secret key for generating JWT
+DEFAULT_USER_LOGIN= # your username, must be at least 4 characters
+DEFAULT_USER_PASSWORD= # your password, must be at least 8 characters
+ACCESS_TOKEN_EXPIRES_MINUTES= # JWT lifetime in minutes
+PROXY_PORT= # published port (of your machine)
+```
+## Run with Docker
+```
+docker-compose up -d
+```
+or
+```
+docker-compose up --build -d
+```
+Navigate to `http://localhost:`
+> Docs available at `http://localhost:/api/docs` or `http://localhost:/api/redoc`
diff --git a/backend b/backend
index e5a787e..ac91c99 160000
--- a/backend
+++ b/backend
@@ -1 +1 @@
-Subproject commit e5a787e7a785b703a82de08add4d439bbc777d48
+Subproject commit ac91c99238360e48fe517ab18e68d11c8b4d7624
diff --git a/docker-compose.override.yml b/docker-compose.override.yml
index aa313cc..5a23aa8 100644
--- a/docker-compose.override.yml
+++ b/docker-compose.override.yml
@@ -14,10 +14,11 @@ services:
environment:
DATABASE_URL: 'postgresql+psycopg2://postgres:password@database:5432/passlocker_db'
DEBUG: 0
- SECRET_KEY: 'secret'
- DEFAULT_USER_LOGIN: test
- DEFAULT_USER_PASSWORD: password
- ACCESS_TOKEN_EXPIRES_MINUTES: 60
+ ROOT_PATH: /api
+ SECRET_KEY: ${SECRET_KEY?}
+ DEFAULT_USER_LOGIN: ${DEFAULT_USER_LOGIN?}
+ DEFAULT_USER_PASSWORD: ${DEFAULT_USER_PASSWORD?}
+ ACCESS_TOKEN_EXPIRES_MINUTES: ${ACCESS_TOKEN_EXPIRES_MINUTES?}
depends_on:
- database
frontend:
@@ -25,7 +26,7 @@ services:
proxy:
build: ./proxy
ports:
- - 85:80
+ - ${PROXY_PORT?}:80
volumes:
pg_data: {}
diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml
index 7c305e5..f3c1674 100644
--- a/docker-compose.prod.yml
+++ b/docker-compose.prod.yml
@@ -10,10 +10,12 @@ services:
DEFAULT_USER_PASSWORD: ${DEFAULT_USER_PASSWORD?}
ACCESS_TOKEN_EXPIRES_MINUTES: ${ACCESS_TOKEN_EXPIRES_MINUTES?}
DEBUG: 0
- resources:
- limits:
- cpu: 0.5
- memory: 100M
+ ROOT_PATH: /api
+ deploy:
+ resources:
+ limits:
+ cpus: '0.5'
+ memory: 100M
proxy:
ports:
- ${PROXY_PORT?}:80
diff --git a/frontend b/frontend
index 8bd4a63..3f377c5 160000
--- a/frontend
+++ b/frontend
@@ -1 +1 @@
-Subproject commit 8bd4a6359f64a29703f6ba92ce09b786ef3ff150
+Subproject commit 3f377c52ec6d80fa35780ad5b862030a2d1c3392