Delete shell scripts and simplify Dockerfile
- Dominant language
- TypeScript
- Stars
- 481
- Forks
- 108
- Avg merge
- 8d 9h
- Merged PRs (30d)
- 7
Description
## Parent PRD
#1660
## What to build
Replace the current Dockerfile (Amazon Linux base with manual Node installation) with a `node:24-alpine` based image. Delete all shell scripts: `process-environment.sh`, `docker-entrypoint.sh`, `setup-ssl.sh`. Remove the `NEPTUNE_NOTEBOOK` build arg and all conditional logic around it.
The entrypoint becomes `node dist/node-server.js`. The server serves the client at `/` (no `/explorer` virtual path). Config is provided via volume mount with `GE_CONFIG` env var.
Update the sample Docker Compose files to use the new configuration approach.
## Acceptance criteria
- [ ] Dockerfile uses `node:24-alpine` base image
- [ ] `process-environment.sh` deleted
- [ ] `docker-entrypoint.sh` deleted
- [ ] `setup-ssl.sh` deleted
- [ ] `NEPTUNE_NOTEBOOK` build arg and all conditional logic removed
- [ ] Entrypoint is `node dist/node-server.js`
- [ ] Client served at `/` instead of `/explorer`
- [ ] Sample Docker Compose files updated with volume-mounted config
- [ ] Docker image builds and starts successfully
## Blocked by
- Blocked by #1662
## User stories addressed
- User story 2
- User story 6
## Related Issues
- Part of #1660
Contributor guide
Research direction
Start with the current Dockerfile and the sample Docker Compose files, then inspect process-environment.sh, docker-entrypoint.sh, and setup-ssl.sh to understand their roles. Apply the listed image, entrypoint, routing, configuration, and cleanup changes, then verify that the Docker image builds and starts successfully and that the Compose examples use volume-mounted configuration.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, docker-compose, node.js, typescript
- Domain
- backend, build-system, devops
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 48/100