是否可以使用GitLab CI / CD在没有Docker的情况下运行Django?

时间:2019-09-03 12:10:00

标签: django gitlab-ci

我正在尝试在我的Django项目中使用GitLab CI / CD功能。是否可以在没有Docker的情况下使用GitLab Runner运行此Django项目,因此在再次启动每个git push服务器之后?此时服务器正在运行,但是在git push之后它没有重新启动,但是它再次创建了新的作业实例。

我尝试制作一些基本的.gitlab-ci.yml文件,但是在我推送更新以掌握工作后,该工作正在运行且从未结束。我可以访问服务器网站,但是当我要更新其他内容以掌握新作业时,该作业会创建,并且以前的作业不会自动结束。

script:
    - python3.6 manage.py runserver --noreload 0.0.0.0:8001 >/dev/null

我认为我尝试运行服务器的这一行很可能是错误的。

1 个答案:

答案 0 :(得分:0)

我在以下步骤中找到了一种解决方案,该解决方案可通过使用Apache运行GitLab CI / CD功能来运行Django实例。

1。。首先,我将.gitlab-ci.yml文件配置为在master分支上更改后重新启动Apache:

stages:
    - name_of_my_stage 
job-my_job:     
    stage: name_of_my_stage     
    script:
        - service httpd restart
    only: 
        - master

有关此文件或GitLab CI / CD的配置可能性的更多信息,请参见其文档GitLab CI/CD pipeline documentation

2。。其次,您需要配置Apache以运行Django实例,如此答案中所述,例如multiple django sites with apache & mod_wsgi或 在DigitalOcean How to for setting up Apache to serve up Django撰写的本教程中,您需要跳到“配置Apache”部分。