Docker-颤振Web部署-无法访问网站

Docker-颤振Web部署-无法访问网站,docker,flutter,docker-compose,flutter-web,Docker,Flutter,Docker Compose,Flutter Web,我正在使用Docker和Flatter Web。我刚刚完成了Docker的设置并为它作曲。 我的Dockerfile FROM ubuntu:18.04 ARG PROJECT_DIR=/srv/api ENV PATH=/opt/flutter/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin RUN apt-get update && \ apt-get install -y \

我正在使用Docker和Flatter Web。我刚刚完成了Docker的设置并为它作曲。 我的
Dockerfile

FROM ubuntu:18.04

ARG PROJECT_DIR=/srv/api
ENV PATH=/opt/flutter/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

RUN apt-get update && \
    apt-get install -y \
        xz-utils \
        git \
        openssh-client \
        curl && \
    apt-get upgrade -y && \
    rm -rf /var/cache/apt

RUN curl -L https://storage.googleapis.com/flutter_infra/releases/stable/linux/flutter_linux_v1.7.8+hotfix.4-stable.tar.xz | tar -C /opt -xJ

RUN apt-get install -y lib32stdc++6

WORKDIR ${PROJECT_DIR}
COPY ./ ./

RUN flutter doctor
RUN flutter upgrade
RUN flutter packages pub global activate webdev
RUN flutter packages upgrade
我的
docker compose.yaml

version: '3.1'
services:
  api:
    container_name: flutter-web-test
    restart: always
    image: flutter-web-test
    build:
      context: ./
    volumes:
      - //var/run/docker.sock:/var/run/docker.sock
    command: ["flutter", "pub", "global", "run", "webdev", "serve", "web:5001"]
执行
docker-compose-f docker-compose.yaml build
docker-compose-f docker-compose.yaml up
后,我收到服务器应该启动的消息

flutter-web-test | web

flutter-web-test | [WARNING] Throwing away cached asset graph due to Dart SDK update.


flutter-web-test | [INFO] Cleaning up outputs from previous builds. completed, took 76ms

flutter-web-test | [INFO] Building new asset graph completed, took 2.5s

flutter-web-test | [INFO] Checking for unexpected pre-existing outputs. completed, took 2ms

flutter-web-test | [INFO] Serving `web` on http://127.0.0.1:5001
但是,当我尝试连接到-时,我看到
无法访问此站点
窗口

如果我在本地运行它,它工作得非常好。我想我一定跳过了Docker中的某些内容,但找不到问题。任何人都可以帮助发现问题?

docker compose文件中缺少您

version: '3.1'
services:
  api:
    container_name: flutter-web-test
    restart: always
    image: flutter-web-test
    port:
      - "5001":"5001"
    build:
      context: ./
    volumes:
      - //var/run/docker.sock:/var/run/docker.sock
    command: ["flutter", "pub", "global", "run", "webdev", "serve", "web:5001"]

webdev
服务器应该像这样监听

服务应该映射到主机,并且
docker
守护进程路径应该是
/var/run/docker.sock

version: '3.1'
services:
  api:
    container_name: flutter-web-test
    restart: always
    image: flutter-web-test
    ports:
      - "5001:5001"
    build:
      context: ./
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    command: ["flutter", "pub", "global", "run", "webdev", "serve", "--hostname", "0.0.0.0:5001"] 

小的语法错误应该是
端口:-5001:5001
但是,在运行它之后,同样的问题出现了。不起作用。但错误消息已更改。现在
此页面不起作用了
web服务器应该正在侦听0.0.0.0上的连接,请检查并发布端口(实际上是“端口”)注意:docker守护程序卷映射不正确(“/var/run/docker.sock:/var/run/docker.sock”)。谢谢,@masseyb,你又救了我一天。它正在工作。然而,出现了另一个问题。立即调查-添加了一个链接,了解有关
0.0.0.0
的详细信息。