首页 > 解决方案 > dockerized badgr-server 后“http://127.0.0.1:8000/ 可能暂时关闭”

问题描述

我正在尝试 dockerize django/python 项目:badgr-server 从这里:我成功地将它部署在没有 docker 的 ubuntu 18.04 的 localhost 上。然后我尝试 dockerize,构建进行得很顺利。当我这样做时:

docker container run -it -p 8000:8000 badgr python root/badgr/code/manage.py runserver localhost:8000 上什么也没有

注意:docker container run -it -p 8000:8000 badgr python ./manage.py不会工作。

输出:

?: (rest_framework.W001) You have specified a default PAGE_SIZE pagination rest_framework setting,without specifying also a DEFAULT_PAGINATION_CLASS.
   HINT: The default for DEFAULT_PAGINATION_CLASS is None. In previous versions this was PageNumberPagination. If you wish to define PAGE_SIZE globally whilst defining pagination_class on a per-view basis you may silence this check.

System check identified 1 issue (0 silenced).
August 06, 2019 - 10:01:22
Django version 1.11.21, using settings 'mainsite.settings_local'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

我在 setting_local.py 中将 ALLOWED_HOSTS 更改为: ALLOWED_HOSTS = ['*'] 谢谢!** 非常欢迎额外的建议!**

这是 Dockerfile :

FROM ubuntu:18.04

# Preparation
RUN apt-get update

# Install server dependencies
RUN apt-get install -y curl git git-core python-virtualenv gcc python-pip python-dev libjpeg-turbo8 libjpeg-turbo8-dev zlib1g-dev libldap2-dev libsasl2-dev swig libxslt-dev automake autoconf libtool libffi-dev libcairo2-dev libssl-dev
RUN pip install virtualenv --upgrade 
#RUN apt install libjpeg8-dev zlib1g-dev -y libcairo2
RUN pip install pillow

# Install database

 Run apt-get install -y libmariadbclient-dev zlib1g-dev  libssl-dev 

# Install main dependencies
Run apt-get install -y libffi-dev libxslt-dev libsasl2-dev libldap2-dev
Run apt-get install -y libmariadbclient-dev zlib1g-dev python-dev libssl-dev python-virtualenv

# Install other useful tools
RUN apt-get install -y git vim sudo curl unzip
RUN apt-get install -y sqlite3




# Cleaning
RUN apt-get clean
RUN apt-get purge

# ADD settings.py /root/settings.py
ADD settings_local.py /root/settings_local.py

# Install the backend
RUN mkdir ~/badgr \
  && cd ~/badgr \
  && git clone https://github.com/concentricsky/badgr-server.git code \
  && cd code \
  && pip install -r requirements.txt \
  && cp /root/settings_local.py apps/mainsite/ \
  && ./manage.py migrate \
  && ./manage.py dist 


EXPOSE 8000

标签: pythondjangodockerfile

解决方案


docker container run --net=host -it -p 8000:8000 badgrrr python root/badgr/code/manage.py runserver它成功了!

有谁知道为什么它在默认网络上不起作用?

像dis一样运行它是错误的吗?德克萨斯州。


推荐阅读