first running configuration

This commit is contained in:
Dobromir Popov 2023-03-06 19:16:13 +02:00
parent 9ac446ef9b
commit 473d640809
6 changed files with 1084 additions and 28 deletions

View File

@ -1,12 +0,0 @@
FROM node:18
# Install basic development tools
RUN apt update && apt install -y less man-db sudo
# Ensure default `node` user has access to `sudo`
ARG USERNAME=node
RUN echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
&& chmod 0440 /etc/sudoers.d/$USERNAME
# Set `DEVCONTAINER` environment variable to help with orientation
ENV DEVCONTAINER=true

View File

@ -1,8 +1,30 @@
// See https://containers.dev/implementors/json_reference/ for configuration reference // For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/javascript-node
{ {
"name": "Untitled Node.js project", "name": "Node.js",
"build": { // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"dockerfile": "Dockerfile" // "image": "mcr.microsoft.com/devcontainers/javascript-node:0-18",
}, "build": { "dockerfile": "../Dockerfile" },
"remoteUser": "node" "postStartCommand": "npm start",
//"postStartCommand": "cd web; ls; node server.js",
// "postStartCommand": "docker buildx install",
// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {
// },
// Use 'forwardPorts' to make a list of ports inside the container available locally.
//"forwardPorts": [ "28080:8080", "28081:8081"],
// tell vscode to forward the port 8080 to the container to random local port
"appPort": ["28080:8080", "28081:8081"],
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "npm install ws express request",
// Configure tool-specific properties.
// "customizations": {},
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
//"runArgs": ["-it"]
} }

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
node_modules/*
package-lock.json

52
Dockerfile Normal file
View File

@ -0,0 +1,52 @@
########## Original Dockerfile ##########
FROM node:18
# Install basic development tools
RUN apt update && apt install -y less man-db sudo
# Ensure default `node` user has access to `sudo`
ARG USERNAME=node
RUN echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
&& chmod 0440 /etc/sudoers.d/$USERNAME
# Set `DEVCONTAINER` environment variable to help with orientation
ENV DEVCONTAINER=true
########## Modified Dockerfile ##########
FROM node:18-alpine
## Install basic development tools
#RUN apt update && apt install -y less man-db sudo
# # Ensure default `node` user has access to `sudo`
# ARG USERNAME=node
# RUN echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
# && chmod 0440 /etc/sudoers.d/$USERNAME
WORKDIR /app
# Copy package.json and package-lock.json
COPY package*.json ./
#RUN apt-get update && apt-get install -y git
#RUN git config --global user.name "Dobromir Popov"
#RUN git config --global user.email "d-popov@abv.bg"
# Install dependencies
RUN npm install ws express request #--only=production
# Copy the rest of the application files
COPY . .
# Start the application
#CMD ["npm", "start"]
CMD npm start
EXPOSE 8080 8081
# Set `DEVCONTAINER` environment variable to help with orientation
ENV DEVCONTAINER=true

999
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +1,13 @@
{ {
"name": "kevin-ai",
"version": "1.0.0",
"main": "web/server.js", "main": "web/server.js",
"scripts": { "scripts": {
"start": "node web/server.js" "start": "node /app/web/server.js"
}, },
"dependencies": { "dependencies": {
"express": "^4.18.2", "express": "^4.18.2",
"request": "^2.88.2", "request": "^2.88.2",
"ws": "^8.12.0" "ws": "^8.12.1"
} }
} }