diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..8deaf9f --- /dev/null +++ b/.dockerignore @@ -0,0 +1,6 @@ +node_modules +npm-debug.log +.env +.git +.gitignore +README.md \ No newline at end of file diff --git a/.env b/.env deleted file mode 100644 index c785493..0000000 --- a/.env +++ /dev/null @@ -1,4 +0,0 @@ -PORT=3000 -API_TOKEN=b4c8e9c9-73e4-4669-b75b-3ad625721286 -API_URL=https://sd.nubes.ru/pub/v1/app/employees/employees_upload/list -API_PAGE_SIZE=1000 \ No newline at end of file diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..9dacfec --- /dev/null +++ b/.env.example @@ -0,0 +1,5 @@ +PORT=3000 + +API_TOKEN= +API_URL= +API_PAGE_SIZE=1000 \ No newline at end of file diff --git a/.gitignore b/.gitignore index 57cf12b..1a8f1e6 100644 --- a/.gitignore +++ b/.gitignore @@ -4,7 +4,7 @@ package-lock.json .idea/ # Переменные окружения -.env.* +.env # Логи npm-debug.log* diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..c062c02 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,20 @@ +# Используем официальный образ Node.js +FROM node:20-alpine + +# Создаем директорию приложения +WORKDIR /app + +# Копируем файлы package.json и package-lock.json +COPY package*.json ./ + +# Устанавливаем зависимости +RUN npm install + +# Копируем исходный код приложения +COPY . . + +# Открываем порт +EXPOSE 3000 + +# Запускаем приложение +CMD ["npm", "start"] \ No newline at end of file diff --git a/README.md b/README.md index cabaeac..63b2234 100644 --- a/README.md +++ b/README.md @@ -2,16 +2,37 @@ Телефонный справочник сотрудников на Node.js. -## Установка +## Установка и запуск + +### Локальный запуск ```bash +# Установка зависимостей npm install + +# Запуск приложения +npm start ``` -## Запуск +Приложение будет доступно по адресу: http://localhost:3000 +### Запуск через Docker + +1. Создайте файл `.env` на основе `.env.example`: ```bash -npm start +cp .env.example .env +``` + +2. Отредактируйте `.env` файл, указав необходимые значения. + +3. Соберите Docker образ: +```bash +docker build -t phone-book . +``` + +4. Запустите контейнер: +```bash +docker run -p 3000:3000 --env-file .env phone-book ``` Приложение будет доступно по адресу: http://localhost:3000 @@ -24,4 +45,5 @@ npm start - Node.js - Express -- node-fetch \ No newline at end of file +- node-fetch +- Docker \ No newline at end of file