Я прочитал на этом уроке , что при создании файла docker-compose.yml
и привязке томов монтирования, если вы не создаете папку на своем хосте, при запуске папки docker-compose up
будет автоматически создан и заполнен содержимым папки контейнера.
Вот цитата:
Тогда вы должны связать том двух папок. В / etc / nginx хранятся все ваши файлы конфигурации, а в / etc / ssl / private хранятся ваши SSL-сертификаты. ОЧЕНЬ важно, чтобы ваша папка config НЕ существовала на вашем хосте при первом запуске контейнера. Когда вы запускаете контейнер с помощью docker -compose, он автоматически создает папку и заполняет ее содержимым контейнера. Если вы создали пустую папку конфигурации на вашем хосте, она смонтирует ее, и папка внутри контейнера будет пустой.
Но, похоже, у меня это не работает. Вот несколько вещей, которые я проверил:
- Мой docker не работает как root. Я создал группу docker на своем компьютере и добавил в нее своего пользователя, поэтому мне не нужно запускать
sudo docker <command>
- Я запускаю сервер Ubuntu 18 LTS
- Это не так Не имеет значения, пытаюсь ли я подключить монтирование томов только для чтения или нет
- При запуске
docker-compose up
создаются папки, но они принадлежат root пользователю - Созданные папка, принадлежащая пользователю root, пуста
Вот мой docker-compose.yml
version: '3'
services:
nginx:
image: nginx
container_name: reverse_nginx
ports:
- "80:80"
- "443:443"
volumes:
- "./html:/usr/share/nginx/html"
- "./conf:/etc/nginx"
- "./ssl:/etc/ssl/private"
restart: unless-stopped
А вот что создано:
icare@icare:~/nginx
$ ls -lR
.:
total 16
drwxr-xr-x 2 root root 4096 Mar 20 15:46 conf
-rw-r--r-- 1 icare icare 269 Mar 20 15:27 docker-compose.yml
drwxr-xr-x 2 root root 4096 Mar 20 15:46 html
drwxr-xr-x 2 root root 4096 Mar 20 15:46 ssl
./conf:
total 0
./html:
total 0
./ssl:
total 0
Я не могу найти решение онлайн, и кажется, что человек спросил на github , и это было решено трудным путем (копирование файлов из контейнера, затем привязывание и монтирование всего), но я не могу помочь думаю, что есть другой способ. Или, может быть, учебник, которому я следую, устарел или не так?