我在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的正确方法吗?