FROM node:16
# Create app directory
WORKDIR /usr/src/app
# Install app dependencies
# A wildcard is used to ensure both package.json AND package-lock.json are copied
# where available (npm@5+)
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3001
CMD [ "node", "index" ]
version: "3"
services:
send2ereader:
build:
context: .
dockerfile: ./Dockerfile
container_name: send3ereader
ports:
- 3001:3001
> docker compose up
[+] Running 1/0
⠿ Container send3ereader Created 0.0s
Attaching to send3ereader
send3ereader | server is listening on port 3001
send3ereader | <-- GET /status/null
send3ereader | --> GET /status/null 200 5ms 23b
send3ereader | <-- GET /
send3ereader | ::ffff:172.18.0.1 Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0
send3ereader | --> GET / 304 2ms
send3ereader | <-- GET /style.css
send3ereader | --> GET /style.css 304 2ms
send3ereader | <-- POST /generate
send3ereader | There are currently 0 key(s) in use.
send3ereader | Generating unique key... ::ffff:172.18.0.1 Mozilla/5.0 (Linux; U; Android 2.0; en-us;) AppleWebKit/538.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/538.1 (Kobo Touch 0376/4.38.21908)
send3ereader | Generated key T9HR, 1 attempt(s)
send3ereader | --> POST /generate 200 2ms 4b
send3ereader | <-- GET /status/T9HR
send3ereader | --> GET /status/T9HR 200 1ms 48b
send3ereader | <-- POST /upload
send3ereader | Incoming file: {
send3ereader | fieldname: 'file',
send3ereader | originalname: REDACTED.epub',
send3ereader | encoding: '7bit',
send3ereader | mimetype: 'application/epub+zip'
send3ereader | }
send3ereader | Uploaded file: {
send3ereader | fieldname: 'file',
send3ereader | originalname: 'REDACTED.epub',
send3ereader | encoding: '7bit',
send3ereader | mimetype: 'application/epub+zip',
send3ereader | destination: 'uploads',
send3ereader | filename: 'file-1701317046504-305283146.epub',
send3ereader | path: 'uploads/file-1701317046504-305283146.epub',
send3ereader | size: 3933051
send3ereader | }
send3ereader | node:events:491
send3ereader | throw er; // Unhandled 'error' event
send3ereader | ^
send3ereader |
send3ereader | Error: spawn kepubify ENOENT
send3ereader | at Process.ChildProcess._handle.onexit (node:internal/child_process:285:19)
send3ereader | at onErrorNT (node:internal/child_process:485:16)
send3ereader | at processTicksAndRejections (node:internal/process/task_queues:83:21)
send3ereader | Emitted 'error' event on ChildProcess instance at:
send3ereader | at Process.ChildProcess._handle.onexit (node:internal/child_process:291:12)
send3ereader | at onErrorNT (node:internal/child_process:485:16)
send3ereader | at processTicksAndRejections (node:internal/process/task_queues:83:21) {
send3ereader | errno: -2,
send3ereader | code: 'ENOENT',
send3ereader | syscall: 'spawn kepubify',
send3ereader | path: 'kepubify',
send3ereader | spawnargs: [
send3ereader | '-v',
send3ereader | '-u',
send3ereader | '-o',
send3ereader | 'file-1701317046504-305283146.kepub.epub',
send3ereader | 'file-1701317046504-305283146.epub'
send3ereader | ]
send3ereader | }
send3ereader exited with code 1
Any advice as to what may be causing this? Once I have this resolved, I can submit a PR with the Dockerfile
and docker-compose.yaml
file.