我是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地址仍然是我收到错误。有人可以帮我解决这个问题。任何帮助将不胜感激。
此外,了解如何制作程序"运行监视器"使用主管
在前台运行