음, 방금 백업을 하고 docker 머신 외부에서 해당 파일이 찾을 수 있는지 확인해 봤는데, 찾을 수 없었습니다.
vagrant@ubuntu-xenial:~$ sudo docker inspect -f "{{.Mounts}}" discourse
[{bind /var/discourse/shared/standalone /shared true rprivate} {bind /var/discourse/shared/standalone/log/var-log /var/log true rprivate}]
맞습니다. 하지만 지금은 일단 무시했습니다. 참고로 그 rsync 작업은 discourse를 실행하던 (vagrant) 머신 외부에서 수행했습니다.
하지만 현재로서는 조언해 주신 대로 다음을 수행했습니다:
- vagrant ssh로 머신에 접속하고 내부에서:
sudo docker exec -w /var/www/discourse -i discourse discourse backup으로 백업을 수행했습니다- 파일 경로를 확인했습니다:
Output file is in: /var/www/discourse/public/backups/default/discourse-2020-05-14-125606-v20200512064023.tar.gz - 해당 특정 파일을 vagrant 머신 전체에서 검색했지만 아무것도 찾지 못했습니다
find / -name discourse-2020-05-14-125606-v20200512064023.tar.gz 2>/dev/null - 그러나 docker 머신 내부에 들어가면 파일이 있습니다
root@ubuntu-xenial-discourse:/var/www/discourse/public/backups/default# ls discourse-2020-05-14-120436-v20200512064023.tar.gz discourse-2020-05-14-121930-v20200512064023.tar.gz discourse-2020-05-14-121710-v20200512064023.tar.gz discourse-2020-05-14-125606-v20200512064023.tar.gz
그래서 제 질문은: 백업을 생성하면 docker 외부에서도 해당 파일이 보일까요?
그동안 저는 vagrant 머신을 새로 생성하고, 표준 /var/discourse 디렉터리에서 내부로 git clone을 수행했습니다. 유일한 “이상한” 점은 컨테이너 내부에 app.yml이 아니라 discourse.yml이 있다는 것입니다.