在Apache config

时间:2018-01-04 10:04:04

标签: apache docker environment-variables docker-compose

我在Docker容器中运行Apache Web服务器。当ServerName设置为dev.mysite.local时,它会正确启动。如下......

<VirtualHost *:80>
    ServerName dev.mysite.local

    ...
</VirtualHost>

但是当我将ServerName更改为$ {MY_SERVER_NAME}

<VirtualHost *:80>
    ServerName ${MY_SERVER_NAME}

    ...
</VirtualHost>

并在我的docker-compose.yml文件中将MY_SERVER_NAME设置为环境变量,启动apache时出现以下错误:

  

AH00111:未定义配置变量$ {MY_SERVER_NAME}。

我可以进入容器并运行:

echo $MY_SERVER_NAME

按预期显示dev.mysite.local,因此环境变量存在并正确设置。

我的docker-compose.yml ...

version: '2'
services:
  db:
    container_name: mysql_develop_db
    restart: always
    image: mysql:5.5.58
    environment:
      - MYSQL_ROOT_PASSWORD=my_secret_password
    ports:
      - "3306:3306"
    volumes:
      - persist-data-volume:/var/lib/mysql
  app:
    container_name: my_app
    build: .
    depends_on:
      - db
    ports:
      - "80:80"
    links:
      - db
    volumes:
      - ./:/app
    restart: always
    environment:
      - MY_SERVER_NAME=dev.mysite.local
volumes:
  persist-data-volume:

知道我为什么会收到这个错误吗?

这是通过docker-compose.yml文件配置Apache ServerName的正确方法吗?

0 个答案:

没有答案