簡體   English   中英

無法容器化清漆,拋出錯誤“服務不可用”

[英]Unable to containerise varnish, throws error "Service Unavailable"

清漆.local.php

<?php
return [
    'acsi_varnish' => [
        'clients' => [
            'cache' => [
                'endpoint' => [
                    'host' => 'dev-varnish',
                    'port' => '8443',
                    'secret' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
                ],
            ],
        ],
    ],
];

默認.vcl

vcl 4.1;

backend default {
    .host = "dev";
    .port = "8080";
}

docker-compose-template.yml

version: '3.7'
services:
  dev:
    image: dev:centos7
    container_name: dev
    hostname: dev
    volumes:
      - ${HOST_BIND_MOUNT_DIR}:${CONTAINER_MOUNT_DIR}
      - /sys/fs/cgroup:/sys/fs/cgroup:ro
    privileged: true
    networks:
      dev-online:
        ipv4_address: 172.100.0.2
    ports:
      - 443:443
#     - 6082:6082
      - 9001:9001
      - 5672:5672
      - 15672:15672
      - 29015:29015
    extra_hosts:
      - dev:127.0.0.1
      - dev-mysql:172.100.0.3
      - dev-mongo-3:172.100.0.4
      - dev-mongo-4:172.100.0.5
      - dev-solr-6:172.100.0.6
      - dev-solr-8:172.100.0.7
      - dev-rethinkdb:172.100.0.8
      - dev-varnish:172.100.0.10

  dev-mysql:
    image: dev-mysql-5.7:latest
    container_name: dev-mysql
    hostname: dev-mysql
    user: "${V_UID}:${V_GID}"
    volumes:
      - ${HOST_BIND_MOUNT_DIR_MYSQL}:${CONTAINER_MOUNT_DIR_MYSQL}
    networks:
      dev-online:
        ipv4_address: 172.100.0.3
    ports:
      - 3306:3306
    environment:
      - MYSQL_ROOT_PASSWORD:${MYSQL_ROOT_PASSWORD}
      - MYSQL_DATABASE:${MYSQL_DATABASE}
    extra_hosts:
      - dev:172.100.0.2
      - dev-mysql:127.0.0.1
      - dev-mongo-3:172.100.0.4
      - dev-mongo-4:172.100.0.5
      - dev-solr-6:172.100.0.6
      - dev-solr-8:172.100.0.7
      - dev-rethinkdb:172.100.0.8
      - dev-memcached:172.100.0.9
      - dev-varnish:172.100.0.10

  dev-mongo-3:
    image: mongo-3.0:dev
    container_name: dev-mongo-3
    hostname: dev-mongo-3
    volumes:
      - ${HOST_BIND_MOUNT_DIR_MONGO_3}:${CONTAINER_MOUNT_DIR_MONGO}
    privileged: true
    networks:
      dev-online:
        ipv4_address: 172.100.0.4
    ports:
      - 27017:27017
    environment:
      - MYSQL_ROOT_PASSWORD="${MYSQL_ROOT_PASSWORD}"
      - MYSQL_DATABASE="${MYSQL_DATABASE}"
    extra_hosts:
      - dev:172.100.0.2
      - dev-mysql:172.100.0.3
      - dev-mongo-3:127.0.0.1
      - dev-mongo-4:172.100.0.5
      - dev-solr-6:172.100.0.6
      - dev-solr-8:172.100.0.7
      - dev-rethinkdb:172.100.0.8
      - dev-memcached:172.100.0.9
      - dev-varnish:172.100.0.10

  dev-mongo-4:
    image: mongo-4.4:dev
    container_name: dev-mongo-4
    hostname: dev-mongo-4
    user: "${V_UID}:${V_GID}"
    volumes:
      - ${HOST_BIND_MOUNT_DIR_MONGO_4}:${CONTAINER_MOUNT_DIR_MONGO}
    privileged: true
    networks:
      dev-online:
        ipv4_address: 172.100.0.5
    ports:
      - 27018:27017
    environment:
      - MYSQL_ROOT_PASSWORD="${MYSQL_ROOT_PASSWORD}"
      - MYSQL_DATABASE="${MYSQL_DATABASE}"
    extra_hosts:
      - dev:172.100.0.2
      - dev-mysql:172.100.0.3
      - dev-mongo-3:172.100.0.4
      - dev-mongo-4:127.0.0.1
      - dev-solr-6:172.100.0.6
      - dev-solr-8:172.100.0.7
      - dev-rethinkdb:172.100.0.8
      - dev-memcached:172.100.0.9
      - dev-varnish:172.100.0.10

  dev-solr-6:
    image: solr-6.6:dev
    container_name: dev-solr-6
    hostname: dev-solr-6
    networks:
      dev-online:
        ipv4_address: 172.100.0.6
    ports:
      - 8983:8983
    extra_hosts:
      - dev:172.100.0.2
      - dev-mysql:172.100.0.3
      - dev-mongo-3:172.100.0.4
      - dev-mongo-4:172.100.0.5
      - dev-solr-6:127.0.0.1
      - dev-solr-8:172.100.0.7
      - dev-rethinkdb:172.100.0.8
      - dev-memcached:172.100.0.9
      - dev-varnish:172.100.0.10

  dev-solr-8:
    image: solr-8.6:dev
    container_name: dev-solr-8
    hostname: dev-solr-8
    user: "${V_UID}:${V_GID}"
    volumes:
      - ${HOST_BIND_MOUNT_DIR_SOLR}:${CONTAINER_MOUNT_DIR_SOLR_8}
    networks:
      dev-online:
        ipv4_address: 172.100.0.7
    ports:
      - 8984:8983
    environment:
      - SOLR_HEAP=2g
    extra_hosts:
      - dev:172.100.0.2
      - dev-mysql:172.100.0.3
      - dev-mongo-3:172.100.0.4
      - dev-mongo-4:172.100.0.5
      - dev-solr-6:172.100.0.6
      - dev-solr-8:127.0.0.1
      - dev-rethinkdb:172.100.0.8
      - dev-memcached:172.100.0.9
      - dev-varnish:172.100.0.10

  dev-rethinkdb:
    image: rethinkdb
    container_name: dev-rethinkdb
    hostname: dev-rethinkdb
    user: "${V_UID}:${V_GID}"
    volumes:
      - ${HOST_BIND_MOUNT_DIR_RETHINKDB}:${CONTAINER_MOUNT_DIR_RETHINKDB}
    networks:
      dev-online:
        ipv4_address: 172.100.0.8
    ports:
      - 28015:28015
      - 8080:8080
    extra_hosts:
      - dev:172.100.0.2
      - dev-mysql:172.100.0.3
      - dev-mongo-3:172.100.0.4
      - dev-mongo-4:172.100.0.5
      - dev-solr-6:172.100.0.6
      - dev-solr-8:172.100.0.7
      - dev-rethinkdb:127.0.0.1
      - dev-memcached:172.100.0.9
      - dev-varnish:172.100.0.10

  dev-memcached:
    image: memcached
    container_name: dev-memcached
    hostname: dev-memcached
    user: "${V_UID}:${V_GID}"
    networks:
      dev-online:
        ipv4_address: 172.100.0.9
    ports:
      - 11211:11211
    extra_hosts:
      - dev:172.100.0.2
      - dev-mysql:172.100.0.3
      - dev-mongo-3:172.100.0.4
      - dev-mongo-4:172.100.0.5
      - dev-solr-6:172.100.0.6
      - dev-solr-8:172.100.0.7
      - dev-rethinkdb:172.100.0.8
      - dev-memcached:127.0.0.1
      - dev-varnish:172.100.0.10

  dev-varnish:
    image: varnish:7.2.1-alpine
    container_name: dev-varnish
    hostname: dev-varnish
    user: '0'
    volumes:
      - "./default.vcl:/etc/varnish/default.vcl"
    ports:
      - "6082:8443"
    tmpfs:
      - /var/lib/varnish/varnishd:exec
    networks:
      dev-online:
        ipv4_address: 172.100.0.10
    extra_hosts:
      - dev:172.100.0.2
      - dev-mysql:172.100.0.3
      - dev-mongo-3:172.100.0.4
      - dev-mongo-4:172.100.0.5
      - dev-solr-6:172.100.0.6
      - dev-solr-8:172.100.0.7
      - dev-rethinkdb:172.100.0.8
      - dev-varnish:127.0.0.1
      - dev-memcached:172.100.0.9

networks:
  dev-online:
    driver: bridge
    ipam:
      driver: default
      config:
        - subnet: 172.100.0.0/24

我正在嘗試將已經在“開發”容器中運行的清漆服務容器化,但是在我容器化之后,我看不到它在工作,我不確定這里出了什么問題。

連接應該在下面的流程中工作

https://loadwebsite.com -> "dev" 容器 -> "dev-varnish" 容器 -> "dev" 容器

瀏覽器拋出以下錯誤

"Service Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later."
  • 請運行 run docker compose ps dev-varnish查看varnishd進程是否正在運行
  • 最后運行docker compose exec -ti dev-varnish varnishlog -g request在容器內運行varnishlog二進制文件並輸出日志

請將varnishlog -g request的輸出附加到您的問題。 這將闡明 Varnish 的行為方式並可能導致可能的解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM