Proyecto App Linux

This commit is contained in:
2026-05-03 23:43:09 +02:00
commit 7482733843
1248 changed files with 189750 additions and 0 deletions
+32
View File
@@ -0,0 +1,32 @@
# Stage 1 - build environment
FROM node:22-alpine AS build
RUN apk add --no-cache python3 make g++ git
# Create app directory
WORKDIR /usr/src/app
# Swtich to node user
#RUN chown node:node ./
#USER node
COPY .npmrc ./
COPY package.json pnpm-lock.yaml ./
# Install app dependencies
RUN corepack enable && pnpm install --frozen-lockfile
# Copy all required files
COPY . .
# Build the application
RUN pnpm run build:web
# Stage 2 - the production environment
FROM nginx:stable-alpine
# Copy artifacts and nignx.conf
COPY --from=build /usr/src/app/dist/browser /usr/share/nginx/html
COPY --from=build /usr/src/app/docker/nginx.conf /etc/nginx/conf.d/default.conf
CMD sed -i "s#http://localhost:3333#$BACKEND_URL#g" /usr/share/nginx/html/main.js && nginx -g 'daemon off;'
+16
View File
@@ -0,0 +1,16 @@
# Self-hosted version of IPTVnator
You can deploy and run the PWA version of IPTVnator on your own machine with `docker-compose` using the following command:
$ cd docker
$ docker-compose up -d
This command will launch the frontend and backend applications. By default, the application will be available at: http://localhost:4333/. The ports can be configured in the `docker-compose.yml` file.
## Build frontend
$ docker build -t 4gray/iptvnator -f docker/Dockerfile .
## Build backend
You can find the backend app with all instructions in a separate GitHub repository - https://github.com/4gray/iptvnator-backend
+18
View File
@@ -0,0 +1,18 @@
---
services:
backend:
image: 4gray/iptvnator-backend:latest
ports:
- "7333:3000"
environment:
- CLIENT_URL=http://localhost:4333
# this one should match with the address and port in frontend CLIENT_URL env
frontend:
image: 4gray/iptvnator:latest
ports:
- "4333:80"
environment:
- BACKEND_URL=http://localhost:7333
# this one should match with the address of the backend service
+11
View File
@@ -0,0 +1,11 @@
server {
listen 80;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri $uri/ /index.html =404;
}
include /etc/nginx/extra-conf.d/*.conf;
}