66 lines
2.2 KiB
Markdown

# Docker Setup for Splitpro
The following guide will walk you through setting up Splitpro using Docker. You can choose between a production setup using Docker Compose or a standalone container.
## Prerequisites
Before you begin, ensure that you have the following installed:
- Docker
- Docker Compose (if using the Docker Compose setup)
## Option 1: Production Docker Compose Setup
This setup includes PostgreSQL and the Splitpro application.
1. Download the Docker Compose file from the Splitpro repository: [compose.yml](https://github.com/oss-apps/split-pro/blob/main/docker/prod/compose.yml)
2. Navigate to the directory containing the `compose.yml` file.
3. Create a `.env` file in the same directory. Copy the contents of `.env.example`
4. Run the following command to start the containers:
```
docker-compose --env-file ./.env up -d
```
This will start the PostgreSQL database and the Splitpro application containers.
5. Access the Splitpro application by visiting `http://localhost:3000` in your web browser.
## Option 2: Standalone Docker Container
If you prefer to host the Splitpro application on your container provider of choice, you can use the pre-built Docker image from DockerHub or GitHub's Package Registry.
1. Pull the Splitpro Docker image:
```
docker pull ossapps/splitpro
```
Or, if using GitHub's Package Registry:
```
docker pull ghcr.io/oss-apps/splitpro
```
2. Run the Docker container, providing the necessary environment variables for your database and SMTP host:
```
docker run -d \
-p ${PORT:-3000}:${PORT:-3000} \
-e PORT=${PORT:-3000} \
-e DATABASE_URL=${DATABASE_URL:?err} \
-e NEXTAUTH_URL=${NEXTAUTH_URL:?err} \
-e NEXTAUTH_SECRET=${NEXTAUTH_SECRET:?err} \
-e GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID:?err} \
-e GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET:?err}
ossapps/splitpro
```
Replace the placeholders with your actual database and aws details.
1. Access the Splitpro application by visiting the URL you provided in the `NEXTAUTH_URL` environment variable in your web browser.
## Success
You have now successfully set up Splitpro using Docker. If you encounter any issues or have further questions, please seek assistance from the community.