[英]docker-compose up invalid mode /docker-entrypoint-initdb.d/ - cannot create container for service database
[英]Are sql dumps moved into docker container `docker-entrypoint-initdb.d` encrypted?
我正在將數據庫轉儲到sql轉儲中:
docker exec mysql sh -c 'exec mysqldump --all-databases -uroot -ppassword' > all-databases.sql
然后,我使用Dockerfile構建mysql映像並作為容器運行:
FROM mysql:5.6.41
# needed for intialization
ENV MYSQL_ROOT_PASSWORD=whateverPassword
ADD all-databases.sql /docker-entrypoint-initdb.d/
EXPOSE 3306
當我執行到容器時運行容器時,是否可以訪問all-databases.sql文件,並在docker映像中以純文本格式查看數據庫的內容?
目前,如果我查看/docker-entrypoint-initdb.d/
它顯示為all-databases.sql,但我不知道該文件的存儲位置/是否已加密。
如果您將docker exec
放入容器中,該文件將不會被加密。 (這只是一個文本文件,您可以在大多數圖像庫中查看more
內容。)
但是,如果您完全可以運行任何Docker命令,那么通常很難在系統上獲得不受限制的root用戶訪問權限。 (考慮使用docker run -v /etc:/host-etc
將自己添加到/etc/sudoers
或允許不使用密碼的root用戶登錄。)
還要記住,如果對您的安全性很重要,那么擁有映像的任何人都可以通過docker run
它並在那里查看文件。 如果您一直在尋找一個具有系統根訪問權限的文件,則可以在/var/lib/docker
輕松找到它。 他們還可以輕松地運行docker history
來查看您設置的數據庫根密碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.