Alist挂载网盘提示connection refused

Oct 17, 2024

在使用Alist docker的时候配置好网盘,显示work状态,但加载路径的时候出现了connect: connection refused的提示。

在issues中也看到一些类似的问题,如文档所言,网络问题自行解决,所以大致判断为默认docker下的桥接模式问题,修改为host,该问题解决,具体如下:
在启动命令中添加

--net=host

对于docker compose,则在配置文件中增加一行:

network_mode: host

关于docker的网络模式

主要网络模式:

  • bridge 模式(默认模式):容器可以通过这个网络互相访问,但无法直接访问外部网络。你需要使用端口映射,将容器的端口映射到宿主机端口,才能让外界访问容器。
  • host 模式:容器直接使用宿主机网络,没有隔离。容器可以直接访问外部网络,也可以访问宿主机上的所有资源。
  • none 模式:容器没有网络连接,无法访问外部网络,也无法与其他容器通信。
  • container 模式:容器共享另一个容器的网络,可以访问该容器的网络资源。

其他网络模式:

  • overlay 网络:可以跨多个主机创建网络,方便多个主机上的容器互相通信。
  • macvlan 网络:容器拥有独立的 MAC 地址,可以访问外部网络,但不能直接访问其他容器。

另附docker compose配置文件:

version: '3.3' 
services: 
    alist: 
        image: 'xhofe/alist:latest' 
        container_name: alist 
        volumes: 
            - './data:/opt/alist/data' 
        ports: 
            - '5244:5244' 
        environment: 
            - PUID=0 
            - PGID=0 
            - UMASK=022 
        restart: unless-stopped 
        network_mode: host