Skip to content

healthcheck dependencies  #238

@phoedos

Description

@phoedos

please add healthcheck dependencies
adminer -> db(healthy)
php -> db(healthy)

---
services:
    php:
        build: ./php/${PHP_VERSION}
        volumes_from:
            - source
        links:
            - db
            - memcached
        environment:
            TZ: Europe/Moscow
        stdin_open: true
        tty: true
        networks:
            - bitrixdock
        restart: unless-stopped
        healthcheck:
            test: ["CMD-SHELL", "php --ini || exit 1"]
            interval: 30s
            timeout: 10s
            retries: 10
            start_period: 10s  
        depends_on:
            db: 
             condition: service_healthy    

    web_server:
        build: ./${WEB_SERVER_TYPE}
        depends_on:
            - source
            - memcached
            - php
            - db
        volumes_from:
            - source
        ports:
            - '${INTERFACE}:80:80'
            - '${INTERFACE}:443:443'
        links:
            - php
        networks:
            - bitrixdock
        environment:
            TZ: Europe/Moscow
        stdin_open: true
        tty: true
        restart: unless-stopped
        healthcheck:
            test: ["CMD-SHELL", "curl -f http://localhost || exit 1"]
            interval: 30s
            timeout: 10s
            retries: 10
            start_period: 10s

    db:
        build: ./${DB_SERVER_TYPE}
        volumes:
            - ./${DB_SERVER_TYPE}/init:/docker-entrypoint-initdb.d
        volumes_from:
            - source
        ports:
            - '${INTERFACE}:3306:3306'
        environment:
            MYSQL_DATABASE: ${MYSQL_DATABASE}
            MYSQL_USER: ${MYSQL_USER}
            MYSQL_PASSWORD: ${MYSQL_PASSWORD}
            MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
            TZ: Europe/Moscow
        command: mysqld --user=root --sql-mode=""
        networks:
            - bitrixdock
        stdin_open: true
        tty: true
        restart: unless-stopped
        healthcheck:
            test: ["CMD-SHELL", "mysqladmin ping -h 127.0.0.1 -u $$MYSQL_USER --password=$$MYSQL_PASSWORD"]
            interval: 10s
            timeout: 5s
            retries: 10
      

    memcached:
        image: memcached:latest
        volumes_from:
            - source
        networks:
            - bitrixdock
        environment:
            TZ: Europe/Moscow
        stdin_open: true
        tty: true
        restart: unless-stopped

    adminer:
        image: dockette/adminer:full
        links:
            - db:db
        ports:
            - '${INTERFACE}:8080:80'
        environment:
            UPLOAD: 1024M # upload_max_filesize, post_max_size
            TZ: Europe/Moscow
        restart: unless-stopped
        stdin_open: true
        tty: true
        networks:
            - bitrixdock
        depends_on:
            db: 
             condition: service_healthy

    source:
        image: alpine:latest
        volumes:
            - ./logs/${WEB_SERVER_TYPE}:/var/log/${WEB_SERVER_TYPE}
            - ./logs/php:/var/log/php
            - ./logs/db:/var/log/mysql
            - ./logs/memcached:/var/log/memcached
            - db:/var/lib/mysql
            - cache:/var/lib/memcached
            - ${SITE_PATH}:/var/www/bitrix
            - /etc/localtime:/etc/localtime/:ro
        networks:
            - bitrixdock

volumes:
    db:
        driver: local
    cache:
        driver: local

networks:
    bitrixdock:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions