configuration一个uwsgi.ini文件,以便DJango项目在Docker容器中工作

我想设置uwsgi.ini文件,以便它将与泊坞窗容器一起工作。

在Dockerfile中,我公开了端口8888.下面是与此问题相关的Dockerfile部分

Dockerfile

 EXPOSE 8888 ENV DOCKER_CONTAINER=1 #CMD ["uwsgi", "--ini", "/code/uwsgi.ini"] <<< right now, this is commented out CMD ["/bin/bash"] 

上面,运行uwsgi.ini文件的CMD被注释掉了,因为对我而言,它最初并不起作用。 我将CMD更改为“/ bin / bash”,以便我可以login到容器的操作系统级别。 这样做之后,我运行下面的代码:

 uwsgi --http 923b235d270e:8888 --chdir=/code/backendworkproj --module=backendworkproj.wsgi:application --env DJANGO_SETTINGS_MODULE=backendworkproj.settings --master --pidfile=/tmp/backendworkproj-master.pid --socket=127.0.0.1:49152 --processes=5 --uid=1000 --gid=2000 --harakiri=20 --max-requests=5000 --vacuum 

一旦完成,我可以去机器上的8888端口,看到网站。

所以,总之,一切正常。

我现在面临的问题是将上面的命令转换成在uwgsi.ini文件中工作的uwgsi.ini

如果你看看上面的命令的一部分,我用:

–http 923b235d270e:8888

指定一个端口。 923b235d270e容器关联(因为127.0.0.1不起作用)

我怎样才能在uwsgi文件中正确地表示这个(和envvariables,如DJANGO_SETTINGS_MODULE),以便服务器能够正常工作? 下面是我的.ini文件。

TIA

uwsgi.ini

 [uwsgi] --http 923b235d270e:8888 chdir=/code/backendworkproj module=backendworkproj.wsgi:application --env DJANGO_SETTINGS_MODULE=backendworkproj.settings master=True pidfile=/tmp/backendworkproj-master.pid socket=127.0.0.1:49152 processes=5 uid=1000 gid=2000 harakiri=20 max-requests=5000 vacuum=True 

没关系。 这个configuration工作。

 [uwsgi] http-socket = :8888 chdir = /code/backendworkproj module = backendworkproj.wsgi:application env = DJANGO_SETTINGS_MODULE=backendworkproj.settings master = True pidfile = /tmp/backendworkproj-master.pid socket = 127.0.0.1:49152 processes = 5 uid = 1000 gid = 2000 harakiri = 20 max-requests = 5000 vacuum = True