容器云设置自动启动服务[西数镜像] 默认是使用supervisor来管理启动程序,默认已经安装和配置好了sshd,如果您有自己的程序需要容器启动时自动启动,请按照下面教程设置。 比如启动宝塔面板命令为 supervisorctl start bt: (如果没有效果,先执行:rm -rf /www/server/panel/logs/panel.pid) 非[西数镜像]请参考本教程末尾说明 Centos 系统配置文件目录 /etc/supervisord.d/,文件后缀为ini Ubuntu、Debian系统配置文件目录/etc/supervisor/conf.d/, 文件后缀为conf 本教程使用nginx作为示例 1. 先安装配置好应用程序,编译安装、yum、apt-get均可,安装步骤略。 2. 建立配置文件 centos: /etc/supervisord.d/nginx.ini Ubuntu、Debian: /etc/supervisor/conf.d/nginx.conf [program:nginx] command=/usr/sbin/nginx -c /etc/nginx/nginx.conf -g 'daemon off;' autorestart=True 3.更新配置文件 在终端中输入命令 supervisorctl update root@e9f9b9578ebb:/# supervisorctl update nginx: added process group 4.查看状态 在终端中输入命令 supervisorctl status root@e9f9b9578ebb:/# supervisorctl status nginx RUNNING pid 440, uptime 0:00:37 sshd RUNNING pid 26, uptime 0:41:50 状态是RUNNING表示运行中。 supervisroctl常用命令 supervisorctl stop nginx # 停止nginx supervisorctl start nginx # 启动nginx supervisorctl restart nginx # 重启nginx supervisorctl stop all # 停止所有进程 supervisorctl start all # 启动所有进程 supervisorctl restart all # 重启所有进程 supervisorctl reload # 重新加载supervisor supervisorctl status # 查看服务状态 supervisorctl update # 更新supervisor,一般增加或者修改启动配置文件后要运行该命令生效 常用程序启动配置文件(文件路径请按照自己实际路径) apache [program:httpd] command=/usr/sbin/httpd -D FOREGROUND autorestart=True mysql [program:mysqld] command=/usr/bin/pidproxy /tmp/mysqld.pid /usr/sbin/mysqld_safe --datadir=/home/mysql_data --pid-file=/tmp/mysqld.pid autorestart=True user=mysql redis [program:redis] command=/usr/local/bin/redis-server /etc/redis.conf autorestart=True tomcat [program:tomcat] directory=/www/server/tomcat/bin command=/www/server/tomcat/bin/catalina.sh run autorestart=True 非[西数镜像]时,请登录到容器管理页面,找到启动命令 如果启动命令是脚本文件,在容器中找到该脚本,把要随容器启动的程序的命令行,添加到此启动脚本中。
|