运行 来自 Docker 容器中 Jenkins 管道的 Django 服务器
Running Django server from Jenkins pipeline in Docker container
我正在尝试设置 Jenkins 管道来部署 Django 项目并在后台运行 Django 的开发服务器。
我想把它分成 3 个步骤,构建、测试、运行。
除了最后一步,一切都很好,确实,当我这样设置时:
...
stage('Run') {
steps{
dir('auto'){
sh 'pwd'
sh '/usr/bin/python3.8 manage.py runserver 0.0.0.0:8000'
}
}
}
服务器启动正常,我可以通过http://127.0.0.1:8000访问项目,但作业没有结束。
我试图绕过这个问题,让服务器 运行 在后台使用 nohup $:
...
stage('Run') {
steps{
dir('auto'){
sh 'pwd'
sh 'nohup /usr/bin/python3.8 manage.py runserver 0.0.0.0:8000 $'
}
}
}
但服务器无法访问 http://127.0.0.1:8000
我是 Jenkins 初学者,也许这不是在后台设置进程 运行 的正确方法。
关注此 post:Clean way of launching a shell script in background from Jenkins
我使用变量设置 JENKINS_NODE_COOKIE=dontKillMe 像这样:
stage('Run') {
steps{
dir('auto'){
sh 'pwd'
sh 'JENKINS_NODE_COOKIE=dontKillMe nohup /usr/bin/python3.8 manage.py runserver 0.0.0.0:8000 &'
}
}
}
我正在尝试设置 Jenkins 管道来部署 Django 项目并在后台运行 Django 的开发服务器。
我想把它分成 3 个步骤,构建、测试、运行。
除了最后一步,一切都很好,确实,当我这样设置时:
...
stage('Run') {
steps{
dir('auto'){
sh 'pwd'
sh '/usr/bin/python3.8 manage.py runserver 0.0.0.0:8000'
}
}
}
服务器启动正常,我可以通过http://127.0.0.1:8000访问项目,但作业没有结束。
我试图绕过这个问题,让服务器 运行 在后台使用 nohup $:
...
stage('Run') {
steps{
dir('auto'){
sh 'pwd'
sh 'nohup /usr/bin/python3.8 manage.py runserver 0.0.0.0:8000 $'
}
}
}
但服务器无法访问 http://127.0.0.1:8000
我是 Jenkins 初学者,也许这不是在后台设置进程 运行 的正确方法。
关注此 post:Clean way of launching a shell script in background from Jenkins 我使用变量设置 JENKINS_NODE_COOKIE=dontKillMe 像这样:
stage('Run') {
steps{
dir('auto'){
sh 'pwd'
sh 'JENKINS_NODE_COOKIE=dontKillMe nohup /usr/bin/python3.8 manage.py runserver 0.0.0.0:8000 &'
}
}
}