Browse Source

Merge pull request #3467 from AliEbrahimpour/master

add   restart: always for all service
Shao Yu-Lung (Allen) 8 months ago
parent
commit
6deb3c07c0
2 changed files with 76 additions and 0 deletions
  1. 65 0
      docker-compose.yml
  2. 11 0
      php-worker/Dockerfile

+ 65 - 0
docker-compose.yml

@@ -57,6 +57,7 @@ services:
 
 ### Workspace Utilities ##################################
     workspace:
+      restart: always
       build:
         context: ./workspace
         args:
@@ -217,6 +218,7 @@ services:
 
 ### PHP-FPM ##############################################
     php-fpm:
+      restart: always
       build:
         context: ./php-fpm
         args:
@@ -326,6 +328,8 @@ services:
         - DOCKER_TLS_CERTDIR=/certs
         - DOCKER_CERT_PATH=/certs/client
         - FAKETIME=${PHP_FPM_FAKETIME}
+        - TZ=${WORKSPACE_TIMEZONE}
+
       depends_on:
         - workspace
       networks:
@@ -335,6 +339,7 @@ services:
 
 ### PHP Worker ############################################
     php-worker:
+      restart: always
       build:
         context: ./php-worker
         args:
@@ -387,12 +392,15 @@ services:
         - ./php-worker/supervisord.d:/etc/supervisord.d
       depends_on:
         - workspace
+      environment:
+          - TZ=${WORKSPACE_TIMEZONE}
       extra_hosts:
         - "dockerhost:${DOCKER_HOST_IP}"
       networks:
         - backend
 ### Laravel Horizon ############################################
     laravel-horizon:
+      restart: always
       build:
         context: ./laravel-horizon
         args:
@@ -447,6 +455,7 @@ services:
 
 ### NGINX Server #########################################
     nginx:
+      restart: always
       build:
         context: ./nginx
         args:
@@ -475,6 +484,7 @@ services:
 
 ### OpenResty Server #########################################
     openresty:
+      restart: always
       build:
         context: ./openresty
         args:
@@ -512,6 +522,7 @@ services:
 
 ### Apache Server ########################################
     apache2:
+      restart: always
       build:
         context: ./apache2
         args:
@@ -537,6 +548,7 @@ services:
 
 ### HHVM #################################################
     hhvm:
+      restart: always
       build: ./hhvm
       volumes:
         - ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
@@ -550,6 +562,7 @@ services:
 
 ### Minio ################################################
     minio:
+      restart: always
       build: ./minio
       volumes:
         - ${DATA_PATH_HOST}/minio/data:/export
@@ -566,6 +579,7 @@ services:
 
 ### MySQL ################################################
     mysql:
+      restart: always
       build:
         context: ./mysql
         args:
@@ -586,6 +600,7 @@ services:
 
 ### Percona ################################################
     percona:
+      restart: always
       build:
         context: ./percona
       environment:
@@ -603,6 +618,7 @@ services:
 
 ### MSSQL ################################################
     mssql:
+      restart: always
       build:
         context: ./mssql
       environment:
@@ -619,6 +635,7 @@ services:
 
 ### MariaDB ##############################################
     mariadb:
+      restart: always
       build:
         context: ./mariadb
         args:
@@ -642,6 +659,7 @@ services:
 
 ### PostgreSQL ###########################################
     postgres:
+      restart: always
       build:
         context: ./postgres
         args:
@@ -696,6 +714,7 @@ services:
 
 ### PostgreSQL PostGis ###################################
     postgres-postgis:
+      restart: always
       build:
         context: ./postgres-postgis
         args:
@@ -714,6 +733,7 @@ services:
 
 ### Neo4j ################################################
     neo4j:
+      restart: always
       ports:
           - '7401:7474'
           - '7402:7687'
@@ -737,6 +757,7 @@ services:
 
 ### MongoDB ##############################################
     mongo:
+      restart: always
       build: ./mongo
       ports:
         - "${MONGODB_PORT}:27017"
@@ -751,6 +772,7 @@ services:
 
 ### RethinkDB ##############################################
     rethinkdb:
+      restart: always
       build: ./rethinkdb
       ports:
         - "${RETHINKDB_PORT}:8080"
@@ -792,6 +814,7 @@ services:
 
   ### Redis ################################################
     redis:
+      restart: always
       build: ./redis
       volumes:
         - ${DATA_PATH_HOST}/redis:/data
@@ -803,6 +826,7 @@ services:
 
 ### Redis Cluster ##########################################
     redis-cluster:
+      restart: always
       build: ./redis-cluster
       ports:
         - "${REDIS_CLUSTER_PORT_RANGE}:7000-7005"
@@ -810,6 +834,7 @@ services:
         - backend
 ### SSDB ################################################
     ssdb:
+      restart: always
       build: ./ssdb
       volumes:
         - ${DATA_PATH_HOST}/ssdb:/data
@@ -820,6 +845,7 @@ services:
 
 ### ZooKeeper #########################################
     zookeeper:
+      restart: always
       build: ./zookeeper
       volumes:
         - ${DATA_PATH_HOST}/zookeeper/data:/data
@@ -831,6 +857,7 @@ services:
 
 ### Aerospike ##########################################
     aerospike:
+      restart: always
       build: ./aerospike
       volumes:
         - workspace
@@ -849,6 +876,7 @@ services:
 
 ### Memcached ############################################
     memcached:
+      restart: always
       build: ./memcached
       volumes:
         - ${DATA_PATH_HOST}/memcached:/var/lib/memcached
@@ -861,6 +889,7 @@ services:
 
 ### Beanstalkd ###########################################
     beanstalkd:
+      restart: always
       build: ./beanstalkd
       ports:
         - "${BEANSTALKD_HOST_PORT}:11300"
@@ -872,6 +901,7 @@ services:
 
 ### SQS #############################################
     sqs:
+      restart: always
       build: ./sqs
       ports:
         - "${SQS_NODE_HOST_PORT}:9324"
@@ -886,6 +916,7 @@ services:
 
 ### RabbitMQ #############################################
     rabbitmq:
+      restart: always
       build: ./rabbitmq
       ports:
         - "${RABBITMQ_NODE_HOST_PORT}:5672"
@@ -905,6 +936,7 @@ services:
 
 ### Mercure #############################################
     mercure:
+      restart: always
       build: ./mercure
       ports:
         - "${MERCURE_NODE_HOST_HTTP_PORT}:80"
@@ -923,6 +955,7 @@ services:
 
 ### Cassandra ############################################
     cassandra:
+      restart: always
       build: ./cassandra
       ports:
         - "${CASSANDRA_TRANSPORT_PORT_NUMBER}:7000"
@@ -955,6 +988,7 @@ services:
 
 ### Gearman ############################################
     gearman:
+      restart: always
       build: ./gearman
       ports:
         - "${GEARMAN_PORT}:4730"
@@ -988,6 +1022,7 @@ services:
 
 ### Beanstalkd Console ###################################
     beanstalkd-console:
+      restart: always
       build: ./beanstalkd-console
       ports:
         - "${BEANSTALKD_CONSOLE_HOST_PORT}:2080"
@@ -998,6 +1033,7 @@ services:
 
 ### Caddy Server #########################################
     caddy:
+      restart: always
       build: ./caddy
       volumes:
         - ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
@@ -1015,6 +1051,7 @@ services:
 
 ### phpMyAdmin ###########################################
     phpmyadmin:
+      restart: always
       build: ./phpmyadmin
       environment:
         - PMA_ARBITRARY=1
@@ -1034,6 +1071,7 @@ services:
 
 ### Adminer ###########################################
     adminer:
+      restart: always
       build:
         context: ./adminer
         args:
@@ -1052,6 +1090,7 @@ services:
 
 ### pgAdmin ##############################################
     pgadmin:
+      restart: always
       image: dpage/pgadmin4:latest
       environment:
         - "PGADMIN_DEFAULT_EMAIL=${PGADMIN_DEFAULT_EMAIL}"
@@ -1081,6 +1120,7 @@ services:
 
 ### ElasticSearch ########################################
     elasticsearch:
+      restart: always
       build:
         context: ./elasticsearch
         args:
@@ -1114,6 +1154,7 @@ services:
 
 ### Logstash ##############################################
     logstash:
+      restart: always
       build:
         context: ./logstash
         args:
@@ -1135,6 +1176,7 @@ services:
 
 ### Kibana ##############################################
     kibana:
+      restart: always
       build:
         context: ./kibana
         args:
@@ -1149,6 +1191,7 @@ services:
 
 ### Dejavu ##############################################
     dejavu:
+      restart: always
       build:
         context: ./dejavu
       ports:
@@ -1174,6 +1217,7 @@ services:
 
 ### MailCatcher ################################################
     mailcatcher:
+      restart: always
       build: ./mailcatcher
       ports:
         - "1025:1025"
@@ -1184,6 +1228,7 @@ services:
 
 ### Mailhog ################################################
     mailhog:
+      restart: always
       build: ./mailhog
       ports:
         - "1025:1025"
@@ -1194,6 +1239,7 @@ services:
 
 ### MailDev ##############################################
     maildev:
+      restart: always
       build: ./maildev
       ports:
         - "${MAILDEV_HTTP_PORT}:80"
@@ -1204,6 +1250,7 @@ services:
 
 ### Mailpit ##############################################
     mailpit:
+      restart: always
       build: ./mailpit
       ports:
         - "${MAILPIT_HTTP_PORT}:8025"
@@ -1214,6 +1261,7 @@ services:
 
 ### Selenium ###############################################
     selenium:
+      restart: always
       build: ./selenium
       ports:
         - "${SELENIUM_PORT}:4444"
@@ -1224,6 +1272,7 @@ services:
 
 ### Varnish ##########################################
     proxy:
+      restart: always
       container_name: proxy
       build: ./varnish
       expose:
@@ -1265,6 +1314,7 @@ services:
 
 ### HAProxy ####################################
     haproxy:
+      restart: always
       build: ./haproxy
       ports:
         - "${HAPROXY_HOST_HTTP_PORT}:8085"
@@ -1276,6 +1326,7 @@ services:
 
 ### Jenkins ###################################################
     jenkins:
+      restart: always
       build: ./jenkins
       environment:
         JAVA_OPTS: "-Djava.awt.headless=true"
@@ -1292,6 +1343,7 @@ services:
 
 ### Grafana ################################################
     grafana:
+      restart: always
       build:
         context: ./grafana
       volumes:
@@ -1303,6 +1355,7 @@ services:
 
 ### Graylog #######################################
     graylog:
+      restart: always
       build: ./graylog
       environment:
         - GRAYLOG_PASSWORD_SECRET=${GRAYLOG_PASSWORD}
@@ -1333,6 +1386,7 @@ services:
 
 ### Laravel Echo Server #######################################
     laravel-echo-server:
+      restart: always
       build:
         context: ./laravel-echo-server
         args:
@@ -1349,6 +1403,7 @@ services:
 
 ### Solr ################################################
     solr:
+      restart: always
       build:
         context: ./solr
         args:
@@ -1364,6 +1419,7 @@ services:
 
 ### Thumbor #########################################
     thumbor:
+      restart: always
       build: ./thumbor
       volumes:
         - ${DATA_PATH_HOST}/thumbor/data:/data
@@ -1480,6 +1536,7 @@ services:
 
 ### AWS EB-CLI ################################################
     aws:
+      restart: always
       build:
         context: ./aws-eb-cli
       volumes:
@@ -1490,6 +1547,7 @@ services:
 
 ### Portainer ################################################
     portainer:
+      restart: always
       build:
         context: ./portainer
       volumes:
@@ -1551,6 +1609,7 @@ services:
 
 ### JupyterHub #########################################
     jupyterhub:
+      restart: always
       build:
         context: ./jupyterhub
       depends_on:
@@ -1586,6 +1645,7 @@ services:
 
 ### IPython #########################################
     ipython-controller:
+      restart: always
       build:
         context: ./ipython
         dockerfile: Dockerfile.controller
@@ -1606,6 +1666,7 @@ services:
 
 ### Docker-in-Docker ################################################
     docker-in-docker:
+      restart: always
       image: docker:20.10-dind
       environment:
         DOCKER_TLS_SAN: DNS:docker-in-docker
@@ -1620,6 +1681,7 @@ services:
 
 ### NetData ################################################
     netdata:
+      restart: always
       image: netdata/netdata:latest
       cap_add:
         - SYS_PTRACE
@@ -1634,6 +1696,7 @@ services:
 
 ### REDISWEBUI ################################################
     redis-webui:
+      restart: always
       build:
         context: ./redis-webui
       environment:
@@ -1651,6 +1714,7 @@ services:
 
 ### MongoWebUI ################################################
     mongo-webui:
+      restart: always
       build:
         context: ./mongo-webui
       environment:
@@ -1668,6 +1732,7 @@ services:
 
 ### Metabase #################################################
     metabase:
+      restart: always
       image: metabase/metabase:latest
       environment:
         - MB_DB_FILE=/metabase-data/${METABASE_DB_FILE}

+ 11 - 0
php-worker/Dockerfile

@@ -650,6 +650,17 @@ ENTRYPOINT ["/usr/bin/supervisord", "-n", "-c",  "/etc/supervisord.conf"]
 #--------------------------------------------------------------------------
 #
 
+###########################################################################
+# Set Timezone
+###########################################################################
+
+ARG TZ=UTC
+ENV TZ ${TZ}
+
+RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
+
+###########################################################################
+
 RUN php -v | head -n 1 | grep -q "PHP ${PHP_VERSION}."
 
 #