使用docker-compose确保webman服务存活

sunwenzheng

因为工作上服务都是跑docker里面的,我需要确保服务一直存活。
如果进程被意外杀死了,要能自动启动。
方法就是利用docker-compose的command和healthcheck功能。
确保服务一直可用。

这里的镜像,命令以及文件路径,需要根据你们自己的来替换。

再一个,因为我用了docker,所以webman跑起来不需要加 -d
如果你命令上 加了 -d 反而会导致容器一直重启

version: "3"
services:
    webman:
      network_mode: "host"
      image: php-image
      container_name: webman
      command: ["/usr/local/bin/php", "/www/localhost/webman/start.php", "start"]
      healthcheck:
        test: nc -z 127.0.0.1 8787
        interval: 5s
        timeout: 5s
        retries: 3
      volumes:
        - ${SOURCE_DIR}:/www/:rw
        - ${PHP_PHP_CONF_FILE}:/usr/local/etc/php/php.ini:ro
        - ${PHP_FPM_CONF_FILE}:/usr/local/etc/php-fpm.d/www.conf:rw
      restart: always
985 0 4
0个评论

sunwenzheng

960
积分
0
获赞数
0
粉丝数
2022-08-02 加入
×
🔝