feat: add Docker support and CI workflow

- Created a Dockerfile to build and deploy the application using a multi-stage build process.
- Added a GitHub Actions workflow to automatically build and publish the Docker image to GitHub Container Registry on pushes to the main branch.
- Updated go.mod and go.sum to reflect dependency upgrades and changes.
- Modified the RSS generator to extend the photo expiration time from 10 minutes to 12 hours.
- Updated rate limiter configuration to allow for environment variable customization.
This commit is contained in:
2026-05-08 13:54:04 +03:30
parent 0686614c54
commit bc2b38a3b0
6 changed files with 142 additions and 31 deletions
+1 -1
View File
@@ -40,7 +40,7 @@ func (r *RateLimiter) getLimiter(ip string, kind string) *rate.Limiter {
}
feedLim := rate.NewLimiter(rate.Every(3*time.Second), 5)
imageLim := rate.NewLimiter(rate.Every(5*time.Second), 4)
imageLim := rate.NewLimiter(rate.Every(5*time.Second), 4) // TODO: get from env
r.clients[ip] = &ClientLimiter{
feedLimiter: feedLim,