使Nextcloud Docker可从本地网络访问

使Nextcloud Docker可从本地网络访问,docker,local-network,Docker,Local Network,我在UbuntuLTS20.04上安装了一个完全对接的Nextcloud服务器 现在,可以从我分配给它的子域通过nginx访问它,并使用来自Lets Encrypt的SSL证书 我希望能够通过端口8140上的网络从本地IP访问它 我尝试使用以下命令将端口添加到docker compose.yml文件: ports: - "8140:8140" 但是端口被分配给0.0.0.0,而不是机器的IP地址 有人知道如何将容器公开给本地网络吗 下面是我使用的docker compose

我在UbuntuLTS20.04上安装了一个完全对接的Nextcloud服务器

现在,可以从我分配给它的子域通过nginx访问它,并使用来自Lets Encrypt的SSL证书

我希望能够通过端口
8140
上的网络从本地IP访问它

我尝试使用以下命令将端口添加到
docker compose.yml
文件:

ports:
          - "8140:8140"
但是端口被分配给
0.0.0.0
,而不是机器的IP地址

有人知道如何将容器公开给本地网络吗

下面是我使用的
docker compose.yml
示例:

version: '3' 

services:

  proxy:
    image: jwilder/nginx-proxy:alpine
    labels:
      - "com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy=true"
    container_name: nextcloud-proxy
    networks:
      - nextcloud_network
    ports:
      - 80:80
      - 443:443
      - "8140:8140"
    volumes:
      - ./proxy/conf.d:/etc/nginx/conf.d:rw
      - ./proxy/vhost.d:/etc/nginx/vhost.d:rw
      - ./proxy/html:/usr/share/nginx/html:rw
      - ./proxy/certs:/etc/nginx/certs:ro
      - /etc/localtime:/etc/localtime:ro
      - /var/run/docker.sock:/tmp/docker.sock:ro
    restart: unless-stopped

  letsencrypt:
    image: jrcs/letsencrypt-nginx-proxy-companion
    container_name: nextcloud-letsencrypt
    depends_on:
      - proxy
    networks:
      - nextcloud_network
    volumes:
      - ./proxy/certs:/etc/nginx/certs:rw
      - ./proxy/vhost.d:/etc/nginx/vhost.d:rw
      - ./proxy/html:/usr/share/nginx/html:rw
      - /etc/localtime:/etc/localtime:ro
      - /var/run/docker.sock:/var/run/docker.sock:ro
    restart: unless-stopped

  db:
    image: mariadb
    container_name: nextcloud-mariadb
    networks:
      - nextcloud_network
    volumes:
      - db:/var/lib/mysql
      - /etc/localtime:/etc/localtime:ro
    environment:
      - MYSQL_ROOT_PASSWORD=toor
      - MYSQL_PASSWORD=mysql
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
    restart: unless-stopped

  app:
    image: nextcloud:latest
    container_name: nextcloud-app
    networks:
      - nextcloud_network
    depends_on:
      - letsencrypt
      - proxy
      - db
    volumes:
      - nextcloud:/var/www/html
      - ./app/config:/var/www/html/config
      - ./app/custom_apps:/var/www/html/custom_apps
      - ./app/data:/var/www/html/data
      - ./app/themes:/var/www/html/themes
      - /etc/localtime:/etc/localtime:ro
    environment:
      - VIRTUAL_HOST=nextcloud.YOUR-DOMAIN
      - LETSENCRYPT_HOST=nextcloud.YOUR-DOMAIN
      - LETSENCRYPT_EMAIL=YOUR-EMAIL
    restart: unless-stopped

volumes:
  nextcloud:
  db:

networks:
  nextcloud_network:

据我所知,您在本地附加绑定到的IP地址,如下所示:

ports:
  - 192.168.0.254:80:80
  - 192.168.0.254:443:443
  - "192.168.0.254:8140:8140"