docker运行宝塔的几个问题:开启不自启动,计划任务无法运行等

# docker运行宝塔的几个问题:开启不自启动,计划任务无法运行等

# 前言

我宝塔运行在 unraid+kvm > alpine+docker里面 为什么不直接 unraid+docker 是因为 我对性能的损耗不怎么在意,物理机性能嗷嗷的 虚拟机的隔离 还有整机备份更加方便。 为什么非要用docker跑宝塔?因为docker配合阿里云免费私有库 整机备份和迁移也方便。 我可以docker stop baota之后 用export和import备份整个容器到新镜像,然后push到阿里云私有库上。在其他机器上直接运行。而不需要重复环境。 alpine 作为一个安装后之占用几十m硬盘的Linux系统非常适合何种虚拟机运行,而且官网有提供适合虚拟机的iso

# docker运行宝塔的几个问题

主要是物理机开机启动后,宝塔不能自动运行 。这里以alpine+docker+centos7+宝塔 为例 在/www/wwwroot新建文件 bt.sh 给运行权限 代码如下/etc/init.d/bt start /etc/init.d/redis start /etc/init.d/php-fpm-74 start /etc/init.d/mongodb start /etc/init.d/mysqld start /etc/init.d/nginx start crond /etc/init.d/mysqld start #再启动一次,有时候 一次启动不起来 其他版本 和宝塔环境可以ls /etc/init.d/ 执行权限 docker exec -it baota chmod +x /www/wwwroot/bt.sh 然后把这个 /www/wwwroot/bt.sh 这个脚本添加到宿主机的开机启动启动里面(Windows 也可以) 以alpine3.6.1为例,在宿主机 新建一个local启动服务脚本 运行刚刚新建的bt.sh 必须以start作为后缀 vi /etc/local.d/bt.start docker exec -it baota sh /www/wwwroot/bt.sh 执行权限 chmod +x /etc/local.d/bt.start 更新和添加local启动项 rc-update add local 重启机器测试,发现都可以正常启动了 crond 这个 是解决宝塔的计划任务不能自动执行的

Licensed under CC BY-NC-SA 4.0
最后更新于 2022-09-07 19:56 UTC
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计