I use Docker to build an Apache image, and then use docker-compose to run it. I set up Apache access.log and error.log and want to store them outside of the container. currently, I use Volumes but it stores the data both in container and host.
docker-compose.yml
version: '2'
services:
web:
image: apache
build: .
container_name: my-image
volumes:
- "/var/log/my-app:/var/log/apache2"
restart: always
ports:
- "8000:80"
My question is how to only store apache log data in a host, and It woule be better if there is a way to stream apache log data to stdout so that I don’t need to store in the host.
Thanks in advance!
2
Answers
Check this post for the Apache configuration:
https://serverfault.com/questions/711168/writing-apache2-logs-to-stdout-stderr
Then you can inspect your logs with
Not really, it should only store data in the host (and makes it visible in the container through a bind mount)
Possible yes, through configuration, but that would not be persistent.