You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何部署集成自定义修改neo4j-browser的新Neo4j Docker镜像?

Build a Custom Neo4j Docker Image with Your Modified Neo4j Browser

Got it, let’s break down exactly how to turn your modified neo4j-browser into a fully deployable Neo4j Docker image. I’ve gone through this workflow a bunch of times, so these steps should get you up and running smoothly:

1. Package Your Modified Neo4j Browser First

Since neo4j-browser is a frontend React app, you need to compile it into static assets first:

  • Navigate to your local neo4j-browser project folder.
  • If you haven’t already, install dependencies with npm install.
  • Run the build command: npm run build. This will spit out a dist folder with all the compiled HTML, JS, CSS, and assets you need.
  • Double-check the dist folder to make sure index.html is present—this is the entry point for the browser UI.

2. Write a Dockerfile to Customize the Official Image

We’ll base our image on the official Neo4j Docker image (it already has all the backend setup we need) and just swap out the default browser files with your modified ones. Here’s a working Dockerfile example:

# Use the official Neo4j image matching your browser's compatible version (adjust tag as needed)
FROM neo4j:5.15.0

# Copy your compiled browser assets into the Neo4j browser directory
COPY ./dist /usr/share/neo4j/browser

# Optional: Set default environment variables (like initial auth credentials)
ENV NEO4J_AUTH=neo4j/your-secure-password

A couple quick notes here:

  • Make sure the Neo4j image tag matches the version your modified browser was built for—mismatched versions can cause API errors between frontend and backend.
  • If your dist folder isn’t in the same directory as the Dockerfile, update the COPY path to point to its actual location on your machine.

3. Build Your Custom Docker Image

Head to the directory where your Dockerfile lives, then run this command to build the image:

docker build -t custom-neo4j:v1 .

Replace custom-neo4j:v1 with a name and tag that makes sense for your project (e.g., my-team-neo4j:2024.01).

4. Test and Deploy Your Image

First, test it locally to make sure your modified browser loads correctly:

docker run -p 7474:7474 -p 7687:7687 custom-neo4j:v1

Open http://localhost:7474 in your browser—you should see your customized neo4j-browser UI!

For production deployment:

  • Push your custom image to a container registry (like Docker Hub, a private Harbor instance, or AWS ECR).
  • When deploying, make sure to mount persistent volumes for /data (to keep Neo4j databases) and /logs (for debugging) so you don’t lose data when containers restart.
  • Adjust environment variables (like NEO4J_AUTH, NEO4J_dbms_memory_pagecache_size, etc.) to fit your production needs.

Quick Troubleshooting Tips

  • Permission issues: If the browser doesn’t load, add RUN chown -R neo4j:neo4j /usr/share/neo4j/browser to your Dockerfile—this ensures the Neo4j process has access to the custom browser files.
  • Version mismatches: If you see API errors in the browser console, double-check that your modified browser’s source branch matches the Neo4j base image version.
  • Build failures: If npm run build fails, make sure you’re using a compatible Node.js version (check the neo4j-browser repo’s README for requirements).

内容的提问来源于stack exchange,提问作者omurbek

火山引擎 最新活动