一、先介绍一下supervisor

  1.安装supervisor

    使用yum安装或者使用pip安装都可以,使用yum安装的相对简单一些,并且不用拷贝一份 supervisord.conf 的配置文件,在这里介绍一下pip安装的方式吧,我是后编译了一个python,执行下面一系列的命令:

/usr/local/python/bin/pip3 install supervisor
ln -s /usr/local/python/bin/supervisorctl /usr/bin/
ln -s /usr/local/python/bin/supervisord /usr/bin/
mkdir /etc/supervisor

  然后需要在这个文件中写入如下,都是固定的,直接拷贝即可:

vim /etc/supervisor/supervisord.conf

  写入下面:

; Sample supervisor config file.
;
; For more information on the config file, please see:
; http://supervisord.org/configuration.html
;
; Notes:
; - Shell expansion ("~" or "$HOME") is not supported. Environment
; variables can be expanded using this syntax: "%(ENV_HOME)s".
; - Quotes around values are not supported, except in the case of
; the environment= options as shown below.
; - Comments must have a leading space: "a=b ;comment" not "a=b;comment".
; - Command will be truncated if it looks like a config file comment, e.g.
; "command=bash -c 'foo ; bar'" will truncate to "command=bash -c 'foo ". [unix_http_server]
file=/var/run/supervisor.sock ; the path to the socket file [supervisord]
logfile=/var/log/supervisord.log ; main log file; default $CWD/supervisord.log
logfile_maxbytes=50MB ; max main logfile bytes b4 rotation; default 50MB
logfile_backups=10 ; # of main logfile backups; 0 means none, default 10
loglevel=info ; log level; default info; others: debug,warn,trace
pidfile=/var/run/supervisord.pid ; supervisord pidfile; default supervisord.pid
nodaemon=false ; start in foreground if true; default false
minfds=1024 ; min. avail startup file descriptors; default 1024
minprocs=200 ; min. avail process descriptors;default 200 ; The rpcinterface:supervisor section must remain in the config file for
; RPC (supervisorctl/web interface) to work. Additional interfaces may be
; added by defining them in separate [rpcinterface:x] sections. [rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface ; The supervisorctl section configures how supervisorctl will connect to
; supervisord. configure it match the settings in either the unix_http_server
; or inet_http_server section. [supervisorctl]
serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL for a unix socket ; The [include] section can just contain the "files" setting. This
; setting can list multiple files (separated by whitespace or
; newlines). It can also contain wildcards. The filenames are
; interpreted as relative to this file. Included files *cannot*
; include files themselves. [include]
files = conf.d/*.conf

  其中主要是红色,随后进行:

mkdir /etc/supervisor/conf.d
cd /etc/supervisor/conf.d

  之后就要编辑要监管的服务了,编辑写入:

vim /etc/supervisor/conf.d/devpi.conf

[program:devpi]
command=/usr/local/python/bin/devpi-server --port 3141 --host 10.213.X.X --serverdir /home/ops/devpi
directory=/home/ops/devpi
autostart=true
autorestart=true
startretries=3
user=root
stopasgroup=true
killasgroup=true
redirect_stderr = true
stdout_logfile_maxbytes = 20MB
stdout_logfile_backups = 20
stdout_logfile = /var/log/devpi-running.log

  真正的模板对应改文件如下,并含解释:

[program:DeployLinux]   #DeployLinux  为程序的名称
command=dotnet DeployLinux.dll #需要执行的命令
directory=/home/publish #命令执行的目录
environment=ASPNETCORE__ENVIRONMENT=Production #环境变量
user=root #用户
stopsignal=INT
autostart=true #是否自启动
autorestart=true #是否自动重启
startsecs=3 #自动重启时间间隔(s)
stderr_logfile=/var/log/ossoffical.err.log #错误日志文件
stdout_logfile=/var/log/ossoffical.out.log #输出日志文件

  随后启动服务,即可:

supervisord -c /etc/supervisor/supervisord.conf

  查看状态,以及重新启动命令如下:

supervisorctl status
supervisorctl restart devpi

  这一部分的内容大概就是这些,参考文章:https://www.cnblogs.com/wyt007/p/8288929.html

  下面是devpi-server的相关内容:

  二、安装devpi-server

    这里同样是使用pip方式进行的安装,执行 pip install 该服务即可,安装成功后,可以使用如下命令查看版本:

/usr/local/python/bin/devpi-server --version

  还需要安装其他几个相关包:

/usr/local/python/bin/pip3 install -q -U devpi-web
/usr/local/python/bin/pip3 install -q -U devpi-client

  然后需要重新启动一下devpi,执行:

/usr/local/python/bin/devpi-server  --port 3141 --host 10.213.X.X --serverdir /home/ops/devpi --init

  这里我创建了一个devops的用户:

/usr/local/python/bin/devpi user -c devops password=devops
/usr/local/python/bin/devpi login devops --password=devops
/usr/local/python/bin/devpi index -c devops bases=root/pypi
/usr/local/python/bin/devpi use devops/devops
/usr/local/python/bin/devpi index devops/devops mirror_url="https://pypi.doubanio.com/simple"

  在我的 ~/.pip/pip.conf 中的为:

[global]
index-url = https://pypi.doubanio.com/simple [search]
index = https://pypi.doubanio.com/simple [install]
trusted-host = 10.213.X.X #就是我的devpi的服务器

  随后可以使用下面两个命令进行查看:

devpi use
devpi index
devpi index root/pypi mirror_url="https://pypi.doubanio.com/simple" 具体的记不太清楚了

  下面进行测试看一看:

devpi login devops
devpi use
cd /tmp/filelock-3.0.10/ # 要上传的包目录下
devpi upload # 上传到devops索引下
devpi list filelock # 查看索引

  

这里有一篇参考文章,如:https://www.cnblogs.com/panhongyin/p/7065830.html

Centos7 中使用搭建devpi并且使用Supervisor守护进程的更多相关文章

  1. 【Centos7】 中使用Supervisor守护进程

    原文出处: Centos7 中使用Supervisor守护进程 配置supervisor实现进程守护 1.安装supervisor yum install Supervisor   2.启动服务 su ...

  2. Centos7 使用 Supervisor 守护进程 Celery

    一.Supervisor 安装(centos7 还有另一个进程守护命令 Systemd ) Centos 7 安装 Supervisord 二.Supervisor 守护进程 Centos7 使用 S ...

  3. 【转载】Centos7 中使用Supervisor守护进程

    配置supervisor实现进程守护 1.安装supervisor yum install Supervisor   2.启动服务 supervisord -c /etc/supervisord.co ...

  4. Centos7 中使用Supervisor守护进程

    转:https://www.cnblogs.com/qmhuang/p/8196132.html 配置supervisor实现进程守护 1.安装supervisor yum install Super ...

  5. CentOS7 安装supervisor守护进程管理器

    supervisor没有发布在标准的CentOS源在,需要安装epel源.这种方式安装的可能不是最新版本,但比较方便,安装完成之后,配置文件会自动帮你生成. 默认配置文件:/etc/superviso ...

  6. Linux Supervisor 守护进程基本配置

    supervisor:C/S架构的进程控制系统,可使用户在类UNIX系统中监控.管理进程.常用于管理与某个用户或项目相关的进程. 组成部分supervisord:服务守护进程supervisorctl ...

  7. centos 下Supervisor 守护进程基本配置

    supervisor:C/S架构的进程控制系统,可使用户在类UNIX系统中监控.管理进程.常用于管理与某个用户或项目相关的进程. 组成部分supervisord:服务守护进程supervisorctl ...

  8. DUBBO+Zookeeper在Centos7中本地搭建及小案例

    环境: 1.centos7 2.jdk-7u76-linux-x64.tar.gz 2.tomcat:apache-tomcat-7.0.59.tar.gz 3.zookeeper-3.4.6.tar ...

  9. centos7 .net core 使用supervisor守护进程,可以后台运行

    1.安装supervisor yum install supervisor 2.配置supervisor vi /etc/supervisord.conf 拉到最后,这里的意思是 /etc/super ...

随机推荐

  1. 在JBPM的Handle类中调用Spring管理的类

    我们在使用JBPM定义流程的时候经常要在流程定义文件中加入一个继承xxxHandler的类来实现我们的业务逻辑判断或者其他的需求,在这个类中一般都是用Spring的Application来获取,而这种 ...

  2. 【 Makefile 编程基础之…

    本站文章均为李华明Himi原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/gcc-makefile/766.html 概述: ...

  3. Linux实战教学笔记40: Mha-Atlas-MySQL高可用方案实践(二)

    六,配置VIP漂移 主机名 IP地址(NAT) 漂移VIP 描述 mysql-db01 eth0:192.168.0.51 VIP:192.168.0.60 系统:CentOS6.5(6.x都可以) ...

  4. 分别用js和css实现瀑布流

    下午查找了瀑布流的相关原理,找了一些css3实现的还有js实现的,最后总结了一些比较简单的,易懂的整理起来 1.css3实现 只要运用到    column-count分列 column-width固 ...

  5. 32. Longest Valid Parentheses (Stack; DP)

    Given a string containing just the characters '(' and ')', find the length of the longest valid (wel ...

  6. Opencv轮廓计数(学习)

    #include <iostream>#include <opencv2/opencv.hpp>#include <opencv2/xfeatures2d.hpp> ...

  7. file_get_contents无法请求https连接的解决方法 php开启curl

    file_get_contents无法请求https连接的解决方法 方法1: PHP.ini默认配置下,用file_get_contents读取https的链接,就会如下错误: Warning: fo ...

  8. 882. Reachable Nodes In Subdivided Graph

    题目链接 https://leetcode.com/contest/weekly-contest-96/problems/reachable-nodes-in-subdivided-graph/ 解题 ...

  9. 10个最新手机美食APP界面设计欣赏

    移动软件时代,简单下载美食app,动动手指,滑动几下手机屏幕,即可足不出户,搜索,预定和购买各路美食.然而,对于作为手机app UI 界面设计师的你来说,最大的问题并不在于如何使用这些美食软件来方便生 ...

  10. jqgrid 单元格放超链接文本

    .前台 <%-- builed by manage.aspx.cmt [ver:] at // :: --%> <%@ Page Language="C#" Au ...