ubuntu 安装supervisord

ubuntu 系统安装命令如下

sudo apt update && sudo apt install supervisor

Supervisor服务在安装后自动运行(这点从安装后创建的symlink到systemd的自启动服务可以看出)。检查其状态:

sudo systemctl status supervisor

 如下安装supervisord 成功,supervisord 可以正常使用的,接下来我们配制守护进程做我们的业务操作

 我们看到这个目录下/etc/supervisor  有一个conf.d文件 夹,这个文件夹可以存放 我们的业务文件,可以多个,每个对应 一个进程

我们也可以通过如下命令创建一个kangshijian.conf文件 作为我们的业务进程

sudo touch /etc/supervisor/conf.d/kangshijian.conf

如下创建完成后,我们可以编辑这个文件内容

vi /etc/supervisor/conf.d/kangshijian.conf

输入如下文件内容

#进程名,crmeb是可以自定义名
[program:crmeb]
#启动命令
command=php think queue:listen --queue
#执行脚本目录,也就是项目根目录执行php think queue:listen --queue这条命令,具体位置根据你们的项目决定,php语言Tp6框架就是在项目根目录,我这里选择项目根目录位置
directory=/var/www/kangshijian/
#守护进程启动时是否同时启动
autorestart=true
#启动多少秒后状态判定
startsecs=3
#启动失败尝试次数
startretries=3
[supervisord]
#日志输出,在指定目录下生成日志文件
stdout_logfile=/var/log/supervisor/log/crmeb.out.log
stderr_logfile=/var/log/supervisor/log/crmeb.err.log
#日志文件大小
stdout_logfile_maxbytes=2MB
stderr_logfile_maxbytes=2MB

# 启动用户,默认系统登录账号,我这里填写系统账号
user=root
# 进程优先级值越小优先级越大,取值范围:999-1
priority=999
# 同时启动多少个进程
numprocs=1
# 进程名
process_name=%(program_name)s_%(process_num)02d
[supervisorctl]


[include]
files = relative/directory/*.ini    ;可以指定一个或多个以.ini结束的配置文件

保存完成后,使用supervisor进程管理命令之前先启动supervisord,否则程序报错,ubuntu 我们使用如下命令启动

supervisord -c /etc/supervisor/conf.d/kangshijian.conf  

若是centos7

systemctl start supervisord.service     //启动supervisor并加载默认配置文件
systemctl enable supervisord.service    //将supervisor加入开机启动项

通过 supervisorctl 命令通知 Supervisor 我们的新程序。首先,我们告诉 Supervisor 在/etc/supervisor/conf.d 目录中查找任何新的或已更改的程序配置:

sudo supervisorctl reread 

然后告诉它通过以下方式进行任何更改

sudo supervisorctl update

要进入交互模式,请运行不带参数的 supervisorctl:

sudo supervisorctl 

最后可以ctrl +c退出

也可以参考Ubuntu上安装和配置Supervisor_小金乌会发光的博客-优快云博客_ubuntu supervisor

### 安装和配置TigerVNC于Ubuntu #### 准备工作 为了确保系统的最新状态,在安装新的软件包之前,更新现有的列表是有必要的。这可以通过运行`sudo apt update && sudo apt upgrade -y`来完成。 #### 安装依赖项 一些基础工具对于编译和其他过程至关重要。通过执行命令 `sudo apt-get install build-essential libssl-dev libxfont* libpixman-1-0 libjpeg-turbo8-dev -y` 来安装这些必需品[^2]。 #### 下载并安装TigerVNC 官方源可能不总是提供最新的版本;因此,有时需要手动下载特定版本的TigerVNC。可以从官方网站获取最新版的信息,并依据说明进行安装。然而,如果希望简化流程,则可以直接利用APT仓库中的资源来进行安装:`sudo apt-get install tigervnc-standalone-server tigervnc-common -y`。 #### 创建VNC用户账户 出于安全考虑,建议创建一个专门用于运行VNC服务的新用户账号。此操作可通过如下指令实现:`adduser vncusername` ,其中vncusername应替换为所期望使用的用户名。 #### 设置初始密码 切换至新建好的用户环境(`su - vncusername`)之后,初始化VNC会话的安全凭证是必不可少的一环。此时应当输入`vncpasswd` 命令以设定访问所需的认证信息。 #### 配置Supervisor管理VNC进程 编辑位于家目录下的`.vnc/xstartup` 文件,确保其内容指向正确的桌面环境启动方式。接着参照提供的模板向`~/thunderbird/supervisord.conf` 添加相应的程序定义片段: ```ini [program:x11] priority=0 command=/usr/bin/Xtigervnc -desktop "Thunderbird" -localhost no -rfbport 5900 -SecurityTypes None -AlwaysShared yes -AcceptKeyEvents true -AcceptPointerEvents true -AcceptSetDesktopSize true -SendCutText true -AcceptCutText true :0 autorestart=true stdout_logfile=/dev/fd/1 stdout_logfile_maxbytes=0 redirect_stderr=true ``` 上述配置允许远程客户端连接到本地X server实例而无需额外的身份验证步骤。请注意调整参数适应实际需求场景。 #### 启动与启用VNC Server作为Systemd Service 最后一步涉及将新建立的服务注册成为systemctl可识别的形式以便长期稳定运作。为此目的准备一份名为`/etc/systemd/system/vncserver@:1.service` 的unit文件,内部结构应该类似于下面这样: ```ini [Unit] Description=Start TigerVNC server at startup After=syslog.target network.target [Service] Type=forking User=vncusername PAMName=login PIDFile=/home/%i/.vnc/%H%i.pid ExecStartPre=-/usr/bin/vncserver -depth 24 -geometry 1280x800 -localhost no -fg %i ExecStop=/usr/bin/vncserver -kill :%i [Install] WantedBy=multi-user.target ``` 保存更改后重新加载守护程序配置并通过`sudo systemctl daemon-reload`使改动生效。现在可以尝试开启该服务了——`sudo systemctl start vncserver@:1` 并将其设为开机自启项目之一 (`sudo systemctl enable vncserver@:1`).
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值