chore: update readme
This commit is contained in:
71
README.md
71
README.md
@@ -47,34 +47,67 @@ See our [roadmap](https://kan.bn/kan/roadmap) for upcoming features.
|
|||||||
|
|
||||||
## Self Hosting 🐳
|
## Self Hosting 🐳
|
||||||
|
|
||||||
### PostgreSQL Database Setup
|
The easiest way to self-host Kan is with Docker Compose. This will set up everything for you including your postgres database.
|
||||||
|
|
||||||
Kan requires a PostgreSQL database. You can run one using the official PostgreSQL Docker image:
|
1. Create a new file called `docker-compose.yml` and paste the following configuration:
|
||||||
|
|
||||||
```bash
|
```yaml
|
||||||
# Run PostgreSQL in a container using the official postgres image
|
services:
|
||||||
docker run -d \
|
web:
|
||||||
--name kan-db \
|
image: ghcr.io/kanbn/kan:latest
|
||||||
-e POSTGRES_DB=kan \
|
container_name: kan-web
|
||||||
-e POSTGRES_USER=kan_user \
|
ports:
|
||||||
-e POSTGRES_PASSWORD=your_secure_password \
|
- "3000:3000"
|
||||||
-p 5432:5432 \
|
networks:
|
||||||
-v kan_postgres_data:/var/lib/postgresql/data \
|
- kan-network
|
||||||
postgres:15
|
environment:
|
||||||
|
NEXT_PUBLIC_BASE_URL: http://localhost:3000
|
||||||
|
BETTER_AUTH_SECRET: your_auth_secret
|
||||||
|
POSTGRES_URL: postgresql://kan:your_postgres_password@postgres:5432/kan_db
|
||||||
|
NEXT_PUBLIC_ALLOW_CREDENTIALS: true
|
||||||
|
depends_on:
|
||||||
|
- postgres
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
# Your POSTGRES_URL should be:
|
postgres:
|
||||||
# postgres://kan_user:your_secure_password@your_host:5432/kan
|
image: postgres:15
|
||||||
|
container_name: kan-db
|
||||||
|
environment:
|
||||||
|
POSTGRES_DB: kan_db
|
||||||
|
POSTGRES_USER: kan
|
||||||
|
POSTGRES_PASSWORD: your_postgres_password
|
||||||
|
ports:
|
||||||
|
- 5432:5432
|
||||||
|
volumes:
|
||||||
|
- kan_postgres_data:/var/lib/postgresql/data
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- kan-network
|
||||||
|
|
||||||
|
networks:
|
||||||
|
kan-network:
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
postgres_data:
|
||||||
```
|
```
|
||||||
|
|
||||||
### Kan Application Deployment
|
2. Start the containers in detached mode:
|
||||||
|
|
||||||
Deploy Kan with Docker using our pre-built image:
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker pull ghcr.io/kanbn/kan:latest && docker run -it -p 3000:3000 --env-file .env ghcr.io/kanbn/kan:latest
|
docker compose up -d
|
||||||
```
|
```
|
||||||
|
|
||||||
Make sure to create a `.env` file with the required environment variables (see the Environment Variables section below).
|
3. Access Kan at http://localhost:3000
|
||||||
|
|
||||||
|
The application will be running in the background. You can manage the containers using these commands:
|
||||||
|
|
||||||
|
- To stop the containers: `docker compose down`
|
||||||
|
- To view logs: `docker compose logs -f`
|
||||||
|
- To restart the containers: `docker compose restart`
|
||||||
|
|
||||||
|
For the complete Docker Compose configuration, see [docker-compose.yml](./docker-compose.yml) in the repository.
|
||||||
|
|
||||||
|
> **Note**: The Docker Compose configuration shown above is a minimal example. For a complete setup with all features (email, OAuth, file uploads, etc.), you'll need to create a `.env` file with the required environment variables. See the Environment Variables section below for the full list of available options.
|
||||||
|
|
||||||
## Local Development 🧑💻
|
## Local Development 🧑💻
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user