Docker端口转发无法在浏览器

时间:2018-01-08 10:15:42

标签: docker docker-compose ubuntu-14.04 dockerfile

我是Docker的新手。我使用ubuntu 14.04作为我的操作系统,并按照https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/#set-up-the-repository的说明安装了Docker Community Edition

我为我的项目创建了一个docker文件,并使用docker-compose文件运行它。 我的Dockerfile如下。

# ImageName
FROM node:8.8.1

# Create app required directories
ENV appDir /usr/src/app
RUN mkdir -p /usr/src/app /usr/src/app/datas /usr/log/supervisor

# Change working directory
WORKDIR ${appDir}

# Install dependencies
RUN apt-get update && \
    apt-get -y install vim\
    supervisor \
    python3 \
        python3-pip \
        python3-setuptools \
        groff \
        less \
    && pip3 install --upgrade pip \
    && apt-get clean

RUN pip3 --no-cache-dir install --upgrade awscli

# Install app dependencies
COPY graphql/package.json /usr/src/app
RUN npm install
RUN npm install -g webpack

# Copy app source code
COPY graphql/ /usr/src/app
COPY datas/ /usr/src/app/datas

# Set Environment Variables
RUN echo export DATA_DIR=/usr/src/app/datas/ >> ~/.data_variables  && \
  echo "source ~/.data_variables" >> ~/.bash_login  && \
    echo "source ~/.data_variables" >> ~/.bashrc 

COPY supervisord.conf /etc/supercvisor/conf.d/supervisord.conf

# Expose API port to the outside
EXPOSE 5000

# Launch application
CMD ["/usr/bin/supervisord", "-c", "/etc/supercvisor/conf.d/supervisord.conf"]

我的docker-compose文件

version: '3'
services:
  web:
    build: .
    image: graphql_img
    container_name: graphql_img_master
    ports:
      - "5000:5000"

我的supervisord.conf文件

[supervisord]
nodaemon=true

[program:babelWatch]
command=npm run babelWatch

[program:monitor]
command=npm run monitor

正如您所看到的,我已经暴露了端口5000,但是当我尝试使用命令localhost:5000/graphql检查浏览器上的输出时,它显示错误

  

无法访问此网站

我甚至尝试使用" docker inspect"来检查docker容器的ip地址。命令和我已经使用该端口的容器IP地址仍然是我收到错误。有人可以帮我解决这个问题。任何帮助将不胜感激。

此外,了解如何制作程序"运行监视器"使用主管

在前台运行

0 个答案:

没有答案