在端口4567上运行在Docker容器中的应用程序不能从外部访问
使用重新创build设置所需的所有文件更新post。 – 仍然是同样的问题。 无法访问在容器中运行的服务。
FROM python:3 RUN apt-get update RUN apt-get install -y ruby rubygems RUN gem install sinatra WORKDIR /app ADD . /app/ EXPOSE 4567 CMD ruby hei.rb -p 4567
hei.rb
require 'sinatra' get '/' do 'Hello world!' end
泊坞窗,compose.yml
version: '2' services: web: build: . ports: - "4567:4567"
我通过运行docker-compose up --build .
开始派对docker-compose up --build .
docker ps返回: 0.0.0.0:4567->4567/tcp
: 0.0.0.0:4567->4567/tcp
不过,没有来自端口4567的响应。testing来自主机的curl。
$ curl 127.0.0.1:4567 # and 0.0.0.0:4567
localhost:4567在收件人中回复
$ docker-compose exec web curl localhost:4567 Hello world!%`
我应该怎么做才能访问运行在4567端口上的Sinatra应用程序?
Sinatra绑定了错误的界面。 通过添加-o
开关来修复。
CMD ruby hei.rb -p 4567 -o 0.0.0.0