49 lines
1.2 KiB
Markdown
49 lines
1.2 KiB
Markdown
# Liam Pietralla Porfolio
|
|
|
|
The portfolio is built using Next.JS and Payload CMS. Payload is running directly in the Next app, and can be accessed by appending /admin to the route.
|
|
|
|
Next is currently using a sqlite database and local file storage. Both are output to a `portfolio-data` directory.
|
|
|
|
## Development
|
|
|
|
To develop the application use pnpm to install the dependencies:
|
|
|
|
```bash
|
|
pnpm install
|
|
```
|
|
|
|
Once downloaded you can use pnpm to run the project:
|
|
|
|
```bash
|
|
pnpm dev
|
|
```
|
|
|
|
### Payload CMS
|
|
|
|
Payload will require rebuilding on the types file once any changes are made:
|
|
|
|
```bash
|
|
pnpm run payload:generate:types
|
|
```
|
|
|
|
In local mode payload will apply any changes to the config to the database automatically. To generate a migration once changes are made, you can use the following command:
|
|
|
|
```bash
|
|
pnpm run payload:migrate:create
|
|
```
|
|
|
|
## Deploying
|
|
|
|
Deploying the portfolio is done as a docker container. It can be built with the following command:
|
|
|
|
```bash
|
|
docker build -t liam-portfolio .
|
|
```
|
|
|
|
### Running the Container
|
|
|
|
Once the container is built, you can run it with the following command:
|
|
|
|
```bash
|
|
docker run -p 3000:3000 -v liam-portfolio-data:/app/portfolio-data -e PAYLOAD_SECRET=your_secret liam-portfolio
|
|
``` |