docker資料夾對映不成功怎麼辦?
解決docker資料夾對映不成功的方法:
docker容器不保持任何資料
重要資料請使用外部磁碟區儲存(資料持久化)
容器可以掛載真實機器目錄或共用儲存為磁碟區
一、主機磁碟區的對應
[root@docker1 ~]# mkdir /var/data [root@docker1 ~]# docker run -it -v /var/data:/abc myos [root@f1fb58b85671 /]# cd /abc/ [root@f1fb58b85671 abc]# touch f1 [root@f1fb58b85671 abc]# ls f1 zhy [root@docker1 ~]# cd /var/data/ [root@docker1 data]# ls f1 [root@docker1 data]# touch zhy
二、使用共用存儲的映射
想法:將一台主機做為nfs主機, 建立對應的資料夾,並將其共用給docker的兩台主機,兩台docker主機將分享的資料夾對應到容器中,使得對應的容器可以共用到nfs主機的內容。可以將http等伺服器的相應的頁面資料夾使用這種形式,從而實現多個容器跑一個業務。
nfs主机配置【192.168.6.77】 [root@nfs ~]# yum -y install nfs-utils [root@nfs ~]# vim /etc/exports /public *(rw) [root@nfs ~]# systemctl restart nfs-server Failed to restart nfs-serve.service: Unit not found [root@nfs ~]# mkdir /public [root@nfs ~]# cd /public/ [root@nfs public]# touch nfs.txt [root@nfs public]# ls nfs.txt docker1主机配置 [root@docker1 ~]# vim /etc/fstab 192.168.6.77:/public /mnt/nfs nfs defaults,_netdev 0 0 [root@docker1 ~]# mkdir /mnt/nfs [root@docker1 ~]# systemctl restart nfs-server [root@docker1 ~]# mount -a [root@docker1 ~]# df -h 192.168.6.77:/public 17G 3.2G 14G 19% /mnt/nfs [root@docker1 ~]# docker run -it -v /mnt/nfs/:/zhuhaiyan 192.168.6.153:5000/myos [root@c7c376e3755a /]# cd /zhuhaiyan [root@c7c376e3755a zhuhaiyan]# ls nfs.txt docker2主机配置 [root@docker2 ~]# vim /etc/fstab 192.168.6.77:/public /mnt/nfs nfs defaults,_netdev 0 0 [root@docker2 ~]# mkdir /mnt/nfs [root@docker2 ~]# systemctl restart nfs-server [root@docker2 ~]# mount -a [root@docker2 ~]# df -h 192.168.6.77:/public 17G 3.2G 14G 19% /mnt/nfs [root@docker2 ~]# docker run -it -v /mnt/nfs/:/zhuhaiyan 192.168.6.153:5000/myos [root@cdd805771d07 /]# cd /zhuhaiyan/ [root@cdd805771d07 zhuhaiyan]# ls nfs.txt
推薦教學:《docker影片教學》
以上是docker資料夾映射不成功怎麼辦?的詳細內容。更多資訊請關注PHP中文網其他相關文章!