Update
This commit is contained in:
parent
a3b9c7cdb1
commit
43fb8dcda6
34
README.md
34
README.md
@ -3,10 +3,42 @@
|
||||
|
||||
Open Source web-based personal expenses tool.
|
||||
|
||||
## Setup prod env
|
||||
1. Install prerequisites:
|
||||
1. docker
|
||||
2. docker compose
|
||||
3. git
|
||||
|
||||
2. Clone this git repository:
|
||||
```bash
|
||||
git clone https://gitea.communiquons.org/pierre/MoneyMgr
|
||||
cd MoneyMgr/docker_prod
|
||||
```
|
||||
|
||||
3. Copy and adapt env values
|
||||
```bash
|
||||
cp .env.sample .env
|
||||
nano .env
|
||||
```
|
||||
|
||||
4. Create required directories:
|
||||
|
||||
```bash
|
||||
mkdir -p storage/{db,redis-data,redis-conf,minio}
|
||||
```
|
||||
|
||||
5. Start containers
|
||||
|
||||
```bash
|
||||
docker compose up
|
||||
```
|
||||
|
||||
6. Checkout http://localhost:8000/
|
||||
|
||||
## Setup dev env
|
||||
1. Install prerequisites:
|
||||
1. docker
|
||||
2. docker-compose
|
||||
2. docker compose
|
||||
3. rust
|
||||
4. node
|
||||
|
||||
|
7
docker_prod/.env.sample
Normal file
7
docker_prod/.env.sample
Normal file
@ -0,0 +1,7 @@
|
||||
MINIO_ROOT_USER=rootuser
|
||||
MINIO_ROOT_PASSWORD=rootpassword
|
||||
DB_USER=db_user
|
||||
DB_PASSWORD=db_password
|
||||
REDIS_PASS=redis_password
|
||||
WEBSITE_ORIGIN=http://localhost:8000
|
||||
APP_SECRET=secretsecretsecretsecretsecretsecretsecretsecretsecretsecretsecret
|
2
docker_prod/.gitignore
vendored
Normal file
2
docker_prod/.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
.env
|
||||
storage
|
27
docker_prod/dex/dex.config.yaml
Normal file
27
docker_prod/dex/dex.config.yaml
Normal file
@ -0,0 +1,27 @@
|
||||
issuer: http://localhost:9001/dex
|
||||
|
||||
storage:
|
||||
type: memory
|
||||
|
||||
web:
|
||||
http: 0.0.0.0:9001
|
||||
|
||||
oauth2:
|
||||
# Automate some clicking
|
||||
# Note: this might actually make some tests pass that otherwise wouldn't.
|
||||
skipApprovalScreen: false
|
||||
|
||||
connectors:
|
||||
# Note: this might actually make some tests pass that otherwise wouldn't.
|
||||
- type: mockCallback
|
||||
id: mock
|
||||
name: Example
|
||||
|
||||
# Basic OP test suite requires two clients.
|
||||
staticClients:
|
||||
- id: foo
|
||||
secret: bar
|
||||
redirectURIs:
|
||||
- http://localhost:8000/oidc_cb
|
||||
|
||||
name: Project
|
72
docker_prod/docker-compose.yml
Normal file
72
docker_prod/docker-compose.yml
Normal file
@ -0,0 +1,72 @@
|
||||
services:
|
||||
minio:
|
||||
image: minio/minio
|
||||
user: "1000"
|
||||
environment:
|
||||
- MINIO_ROOT_USER=$MINIO_ROOT_USER
|
||||
- MINIO_ROOT_PASSWORD=$MINIO_ROOT_PASSWORD
|
||||
volumes:
|
||||
- ./storage/minio:/data
|
||||
command: [ "minio", "server", "/data", "--console-address", ":9090" ]
|
||||
ports:
|
||||
- 9000:9000
|
||||
- 9090:9090
|
||||
expose:
|
||||
- 9000
|
||||
|
||||
db:
|
||||
image: postgres
|
||||
user: "1000"
|
||||
ports:
|
||||
- "5432:5432"
|
||||
expose:
|
||||
- 5432
|
||||
environment:
|
||||
- POSTGRES_USER=$DB_USER
|
||||
- POSTGRES_PASSWORD=$DB_PASSWORD
|
||||
- POSTGRES_DB=moneymgr
|
||||
volumes:
|
||||
- ./storage/db:/var/lib/postgresql/data
|
||||
|
||||
oidc:
|
||||
image: dexidp/dex
|
||||
user: "1000"
|
||||
expose:
|
||||
- 9001
|
||||
ports:
|
||||
- 9001:9001
|
||||
volumes:
|
||||
- ./dex:/conf:ro
|
||||
command: [ "dex", "serve", "/conf/dex.config.yaml" ]
|
||||
|
||||
redis:
|
||||
image: redis:alpine
|
||||
user: "1000"
|
||||
command: redis-server --requirepass ${REDIS_PASS:-secretredis}
|
||||
expose:
|
||||
- 6379
|
||||
volumes:
|
||||
- ./storage/redis-data:/data
|
||||
- ./storage/redis-conf:/usr/local/etc/redis/redis.conf
|
||||
|
||||
moneymgr:
|
||||
image: pierre42100/moneymgr_backend
|
||||
user: "1000"
|
||||
ports:
|
||||
- 8000:8000
|
||||
environment:
|
||||
- WEBSITE_ORIGIN=${WEBSITE_ORIGIN}
|
||||
- SECRET=${APP_SECRET}
|
||||
- DB_HOST=db
|
||||
- DB_USERNAME=$DB_USER
|
||||
- DB_PASSWORD=$DB_PASSWORD
|
||||
- DB_NAME=moneymgr
|
||||
- OIDC_CONFIGURATION_URL=http://oidc:9001/dex/.well-known/openid-configuration
|
||||
- OIDC_PROVIDER_NAME=OIDC
|
||||
- OIDC_CLIENT_ID=foo
|
||||
- OIDC_CLIENT_SECRET=bar
|
||||
- S3_ENDPOINT=http://minio:9000
|
||||
- S3_ACCESS_KEY=$MINIO_ROOT_USER
|
||||
- S3_SECRET_KEY=$MINIO_ROOT_PASSWORD
|
||||
- REDIS_HOSTNAME=redis
|
||||
- REDIS_PASSWORD=${REDIS_PASS:-secretredis}
|
Loading…
x
Reference in New Issue
Block a user