使用docker compose运行neo4j-无法从localhost:7474访问neo4j

使用docker compose运行neo4j-无法从localhost:7474访问neo4j,docker,neo4j,docker-compose,dockerfile,Docker,Neo4j,Docker Compose,Dockerfile,---已编辑--不再工作--请帮助-- 最新的neo4j图像中可能有什么变化(请参阅下面的答案了解更多详细信息) 我试图通过这个github repo(包含docker compose.yml)运行带有docker compose的neo4j 此repo中包含的docker compose文件只不过是一个普通的neo4j docker图像,其中已经附加了一些数据(您可以自己尝试,图像非常小) 运行此文件docker compose up-d(从docker compose.yml文件所在的文件

---已编辑--不再工作--请帮助-- 最新的neo4j图像中可能有什么变化(请参阅下面的答案了解更多详细信息)

我试图通过这个github repo(包含docker compose.yml)运行带有docker compose的neo4j

此repo中包含的docker compose文件只不过是一个普通的neo4j docker图像,其中已经附加了一些数据(您可以自己尝试,图像非常小)

运行此文件
docker compose up-d
(从
docker compose.yml
文件所在的文件夹中)似乎一切正常(没有显示错误,控制台的输出是
启动Workshop4jDocker\u neo4j\u 1…完成
) 但在浏览器中,以下地址未显示任何内容:

localhost:7474
0.0.0.0:7474
127.0.0.1:7474
<dockermachine ip>:7474    got this address with `docker-machine ip`
我想修改此文件,添加
网络\u模式:“网桥”
或使用其他值进行测试(
主机,无,服务:[service name],容器:[container name/id]

但现在的问题是:

如果neo4j docker映像中没有安装
nano
编辑器,我甚至无法安装它,因为也没有安装
apt get
,如何修改此文件。 (这真是一幅非常简约的图像)

我不是linux用户,所以我不知道如何修改这个文件。 您可以建议我如何在不使用vim的情况下在没有这些工具的图像上修改此文件吗

我对linux不是很精通,但我需要运行上述github repo提供的
docker compose.yml
文件

我的环境

Docker Toobox for windows
`docker version`
Client:
 Version:       18.01.0-ce
 API version:   1.35
 Go version:    go1.9.2
 Git commit:    03596f51b1
 Built: Thu Jan 11 22:29:41 2018
 OS/Arch:       windows/amd64
 Experimental:  false
 Orchestrator:  swarm

Server:
 Engine:
  Version:      18.01.0-ce
  API version:  1.35 (minimum version 1.12)
  Go version:   go1.9.2
  Git commit:   03596f5
  Built:        Wed Jan 10 20:13:12 2018
  OS/Arch:      linux/amd64
  Experimental: false
PS:你认为问题与ip地址无关吗


>>>>编辑向
docker compose.yml
文件添加
网络模式:“桥接”
,并访问docker机器ip,图像正常工作

docker compose.yml

version: '3'

services:
  neo4j:
    image: neo4j:latest
    ports:
      - "7474:7474"
      - "7687:7687"
    environment:
      - NEO4J_dbms_security_procedures_unrestricted=apoc.*
      - NEO4J_apoc_import_file_enabled=true
      - NEO4J_dbms_shell_enabled=true
    volumes:
      - ./plugins:/plugins
      - ./data:/data
      - ./import:/import
version: '3'

services:
  neo4j:
    image: neo4j:latest
    network_mode: "bridge"
    ports:
      - "7474:7474"
      - "7687:7687"
    environment:
      - NEO4J_dbms_security_procedures_unrestricted=apoc.*
      - NEO4J_apoc_import_file_enabled=true
      - NEO4J_dbms_shell_enabled=true
    volumes:
      - ./plugins:/plugins
      - ./data:/data
      - ./import:/import

看起来不错。你能提供
docker ps
输出吗?@BukharovSergey我已经在上面的帖子中添加了
ps
输出,谢谢。集装箱港口转发成功<代码>0.0.0.0:7474->7474/tcp。它必须可以通过web浏览器通过
localhost:7474
127.0.0.1:7474
访问。所有配置看起来都正常。我认为这是docker windows的问题。您可以尝试将docker降级为
17.12.0-ce
,或在
Linux
machineDocker toolbox for windows安装virtualbox计算机,使容器已在Linux计算机上运行如果以前的解决方案不再有效,请提出与此相关的新问题。不要编辑此问题或仅为docker compose up添加“答案”
version: '3'

services:
  neo4j:
    image: neo4j:latest
    network_mode: "bridge"
    ports:
      - "7474:7474"
      - "7687:7687"
    environment:
      - NEO4J_dbms_security_procedures_unrestricted=apoc.*
      - NEO4J_apoc_import_file_enabled=true
      - NEO4J_dbms_shell_enabled=true
    volumes:
      - ./plugins:/plugins
      - ./data:/data
      - ./import:/import