46 lines
1015 B
Markdown
46 lines
1015 B
Markdown
# Backstory web frontend
|
|
|
|
## Development
|
|
|
|
```
|
|
docker compose up frontend -d
|
|
```
|
|
|
|
The container bind mounts frontend/ into the container, and launches `npm start`. Once running, you can now access https://localhost:3000 to view the frontend.
|
|
|
|
To monitor progress and build errors:
|
|
|
|
```
|
|
docker compose logs -f frontend
|
|
```
|
|
|
|
When you are happy with your changes and wish to deploy to production:
|
|
|
|
1. Commit your changes:
|
|
|
|
```
|
|
git commit
|
|
```
|
|
|
|
2. Build the static deployed version:
|
|
```
|
|
docker compose exec frontend shell ./build.sh
|
|
```
|
|
|
|
3. If successful, tag your version:
|
|
|
|
```
|
|
git tag -a "deployed-$(date +%y%m%d)" -m "Deployed on $(date)"
|
|
```
|
|
|
|
4. Push your changes:
|
|
|
|
```
|
|
git push origin main --tags
|
|
```
|
|
|
|
## Production
|
|
|
|
Static production build is in `deployed`. You do not need to be running the frontend container once deployed to production.
|
|
|
|
When you run the `build.sh` script, it first builds to `build`. If that succeeds, it then runs `rsync -avprl --delete build/ deployed/` to update the deployed static content. |