Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
dockerize django apache开发人员环境_Django_Apache_Docker - Fatal编程技术网

dockerize django apache开发人员环境

dockerize django apache开发人员环境,django,apache,docker,Django,Apache,Docker,我试图将我的django/apache web应用程序dockerize 从大的角度来看,这种做法是可行的。 对于部署,Annot在3个容器中运行。apache_annot容器保存apache服务器和postgresql数据库,media_annot容器用作web应用程序媒体文件夹。annot容器保存与django-python相关的代码。 开发只需要两个容器:apache_annot容器和media_annot容器。django和python相关的代码被放入主机的目录中。然后,apache_a

我试图将我的django/apache web应用程序dockerize

从大的角度来看,这种做法是可行的。 对于部署,Annot在3个容器中运行。apache_annot容器保存apache服务器和postgresql数据库,media_annot容器用作web应用程序媒体文件夹。annot容器保存与django-python相关的代码。 开发只需要两个容器:apache_annot容器和media_annot容器。django和python相关的代码被放入主机的目录中。然后,apache_annot将该目录作为数据卷装载到/var/www/annot/下

此处是指向Docker文件的链接:

问题: 即使是dockerized版本也可以工作,但它似乎不是以真正的docker方式完成的。 最恼人的问题是:每次重新启动apache(在开发过程中经常发生这种情况)时,apache_annot容器就会停止,因此整个web应用程序都会停止。 要继续使用apache,不必重新启动:

docker exec -ti apache_annot /bin/bash 
然后必须重新启动postgresql数据库:

/etc/init.d/postgresql start 
并将cd插入/var/www/annot/以执行django开发特定的python代码,如:

python3 manage.py makemigrations.
使用此解决方案进行开发几乎是不可能的

我不是唯一一个喜欢使用dockerize django apache开发环境的人。我做错了什么


有没有办法运行apache_annot,这样就可以重新启动apache守护进程,而无需关闭apache_annot docker容器?

我没有使用过python,但从apache的配置来看,python与apache紧密耦合。我会切换到一个独立的python Web服务器(如tornado)和前面的代理Web服务器(如nginx、varnish甚至Apache)的解决方案。感谢您的输入。也许真正的方法是将更多的部件解耦到单个容器中。一个用于postgresql数据库,另一个用于djnago/pyhon代码。Apache通过mod_wsgi模块()连接到python,我推荐uwsgi+nginx+postgresql+django。这是一个常见的设置,有很多关于如何设置它的指南和教程。与此同时,我能够使用nginx+(gunicorn+django)+postgesql设置正确地对接我的django应用程序,这是Michael Herman的优秀设置。这是指向教程的链接。设置可能与Håken Lid和Mzedeler建议的类似。我认为这个问题已经结束。谢谢