From 5426e5b48e85761a96fed9656354d5f5c296d31a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20J=C4=99drzejewski?= Date: Fri, 7 Feb 2025 02:47:00 +0100 Subject: [PATCH] add docker --- .env.example | 2 ++ Dockerfile | 12 ++++++++++++ docker-compose.yml | 7 +++++++ package.json.docker | 34 ++++++++++++++++++++++++++++++++++ 4 files changed, 55 insertions(+) create mode 100644 .env.example create mode 100644 Dockerfile create mode 100644 docker-compose.yml create mode 100644 package.json.docker diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..0515989 --- /dev/null +++ b/.env.example @@ -0,0 +1,2 @@ +FIRECRAWL_KEY="YOUR_KEY" +OPENAI_KEY="YOUR_KEY" diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..26d30f1 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,12 @@ +FROM node:18-alpine + +WORKDIR /app + +COPY . . +COPY package.json.docker ./package.json +COPY .env.example ./.env.local + +RUN npm install + + +CMD ["npm", "start"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..d50a478 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,7 @@ +services: + deep-research: + build: . + env_file: + - .env.local + tty: true + stdin_open: true diff --git a/package.json.docker b/package.json.docker new file mode 100644 index 0000000..c133924 --- /dev/null +++ b/package.json.docker @@ -0,0 +1,34 @@ +{ + "name": "open-deep-research", + "version": "0.0.1", + "main": "index.ts", + "scripts": { + "format": "prettier --write \"src/**/*.{ts,tsx}\"", + "tsx": "tsx --env-file=.env.local", + "start": "tsx src/run.ts", + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "ISC", + "description": "", + "devDependencies": { + "@ianvs/prettier-plugin-sort-imports": "^4.4.1", + "@types/lodash-es": "^4.17.12", + "@types/node": "^22.13.0", + "prettier": "^3.4.2", + "tsx": "^4.19.2", + "typescript": "^5.7.3" + }, + "dependencies": { + "@ai-sdk/openai": "^1.1.9", + "@mendable/firecrawl-js": "^1.16.0", + "ai": "^4.1.17", + "js-tiktoken": "^1.0.17", + "lodash-es": "^4.17.21", + "p-limit": "^6.2.0", + "zod": "^3.24.1" + }, + "engines": { + "node": "22.x" + } +} \ No newline at end of file