Skip to content

Commit 6c34108

Browse files
committed
minor change
1 parent e1287b6 commit 6c34108

File tree

3 files changed

+39
-6
lines changed

3 files changed

+39
-6
lines changed

Dockerfile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ RUN npm run build
1515

1616
# Install production deps for server
1717
WORKDIR /app/server
18-
RUN npm ci --omit=dev
18+
# Prefer reproducible installs; fall back to npm install when lockfile changes
19+
RUN npm ci --omit=dev || npm install --omit=dev
1920

2021
# ---------- STAGE 2: runtime ----------
2122
FROM node:20-alpine
@@ -28,7 +29,7 @@ ENV PORT=8080
2829
COPY --from=builder /app/dist /app/dist
2930
COPY --from=builder /app/server /app/server
3031

31-
EXPOSE 8080
32+
EXPOSE 8080 8443
3233

3334
# Copy and enable entrypoint
3435
COPY docker-entrypoint.sh /app/server/docker-entrypoint.sh

README.md

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
* 📱 Mobile-First → responsive design that looks great on any device.
5656
* 🗄 Standalone by Design → lightweight, no Firebase/Supabase required.
5757
* ⚡ Fast & Modern → built with Vite, React, and Tailwind CSS.
58+
* 🔒 **Built-in HTTPS support** → enable automatic SSL (self-signed) by setting `ENABLE_HTTPS=true`, runs alongside HTTP on port `8443`.
5859

5960
### 🔒 Security Features
6061

@@ -96,6 +97,8 @@ Credentials:
9697
> Public → http://localhost:3001
9798
9899
> Admin → http://localhost:3001/admin
100+
HTTPS (optional) → https://localhost:8443
101+
(requires ENABLE_HTTPS=true)
99102
</details>
100103

101104

@@ -112,17 +115,21 @@ You can run **Lynx** directly using the pre-built image from [Docker Hub](https:
112115
```bash
113116
docker run -d --name lynx \
114117
-p 8080:8080 \
118+
-p 8443:8443 \
115119
-e NODE_ENV=production \
116120
-e PORT=8080 \
117121
-e JWT_SECRET="your-very-secret-key" \
122+
-e ENABLE_HTTPS=true \
118123
-v lynx_data:/app/server \
119124
paueron/lynx:latest
120125
```
121126
> ⚠️ Since version v3.5.0, the container requires a JWT_SECRET to start.
122127
If it’s missing, startup will fail with an error message to prevent insecure sessions.
123128

124129
Once started, the app will be available at:
125-
> 👉 http://localhost:8080
130+
> 🌐 HTTP → http://localhost:8080
131+
> 🔒 HTTPS → https://localhost:8443
132+
(self-signed certificate)
126133

127134
> 👉 http://localhost:8080/admin
128135

@@ -149,8 +156,15 @@ You can deploy **Lynx** on [Railway](https://railway.com) in a few steps:
149156
```bash
150157
npm run start
151158
```
152-
4. Click **Create** and wait for the deployment ✨
153-
5. Add a public domain in the settings
159+
4. Add environment variables:
160+
```bash
161+
NODE_ENV=production
162+
PORT=8080
163+
JWT_SECRET=your-very-secret-key
164+
ENABLE_HTTPS=true
165+
```
166+
5. Click **Create** and wait for the deployment ✨
167+
6. Add a public domain in the settings
154168

155169
</details>
156170

@@ -221,6 +235,8 @@ You can deploy **Lynx** on [Railway](https://railway.com) in a few steps:
221235
```bash
222236
docker run -d -p 8080:8080 -e JWT_SECRET="your-strong-random-secret" paueron/lynx:latest
223237
```
238+
- **Built-in HTTPS support**enable automatic SSL (self-signed) by setting `ENABLE_HTTPS=true`, runs alongside HTTP on port `8443`.
239+
224240
---
225241
## 📌 To-Do / Next Steps
226242

package-lock.json

Lines changed: 17 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)