如何使用docker compose在同一台机器上运行两个neo4j实例

如何使用docker compose在同一台机器上运行两个neo4j实例,neo4j,docker-compose,Neo4j,Docker Compose,我可以使用docker compose在同一台机器上运行两个neo4j实例吗?如果我有一个实例符合以下设置,那么第二个实例的端口设置应该是什么?或者我必须做的任何其他必要的设置 version: '3.2' services: neo4j: container_name: Neo4j_test image: neo4j:latest volumes: - ./neo4jdb/data/:/data/

我可以使用docker compose在同一台机器上运行两个neo4j实例吗?如果我有一个实例符合以下设置,那么第二个实例的端口设置应该是什么?或者我必须做的任何其他必要的设置

version: '3.2'
services:
    neo4j:
        container_name: Neo4j_test
        image: neo4j:latest
        volumes:
            - ./neo4jdb/data/:/data/ 
            - ./neo4jdb/conf/:/conf/
            - ./neo4jdb/logs/:/logs/             
            - ./neo4jdb/plugins/:/plugins/   
            - ./neo4jdb/import/:/import/ 
        ports:
            - "7474:7474" 
            - "7687:7687"
        environment:
            - NEO4J_apoc_export_file_enabled=true 
            - NEO4J_apoc_import_file_enabled=true 
            - NEO4J_apoc_import_file_use_neo4j_config=true
            - NEO4J_dbms_security_procedures_unrestricted=apoc.*
            - NEO4J_dbms_memory_heap_initial__size=512m
            - NEO4J_dbms_memory_heap_max__size=8G
            - NEO4J_AUTH=neo4j/test
        networks: ['Neo4j']
        restart: unless-stopped

networks: {Neo4j: {}}
# use docker volume to persist data outside of a container.
volumes:
  Neo4j_data:
这是第二个容器的docker-compose.yml

version: '3.2'
services:
    neo4j:
        container_name: Neo4j_test2
        image: neo4j:latest
        volumes:
            - ./neodb/data/:/data/ 
            - ./neodb/conf/:/conf/
            - ./neodb/logs/:/logs/             
            - ./neodb/plugins/:/plugins/   
            - ./neodb/import/:/import/ 
        ports:
            - "27474:7474" 
            - "27687:7687"
        environment:
            - NEO4J_apoc_export_file_enabled=true 
            - NEO4J_apoc_import_file_enabled=true 
            - NEO4J_apoc_import_file_use_neo4j_config=true
            - NEO4J_dbms_security_procedures_unrestricted=apoc.*
            - NEO4J_dbms_memory_heap_initial__size=512m
            - NEO4J_dbms_memory_heap_max__size=2G
            - NEO4J_AUTH=neo4j/test
        networks: ['Neo4j_lab']
        restart: unless-stopped

networks: {Neo4j_lab: {}}
# use docker volume to persist data outside of a container.
volumes:
  Neo4j_lab_data:
如何分别保存两个容器的数据库?我将这两个docker-compose.yml文件保存在两个单独的目录中


谢谢

您应该将第二个Neo4j容器的端口映射到主机的其他端口:

ports:
  - "27474:7474" 
  - "27687:7687"

查看gor更多信息。

谢谢您的回复。这并不能解决问题,因为当我用docker compose创建一个新容器时,它仍然指向现有数据库的数据库。我需要一个新的容器及其单独的数据。