OpenWrt-Docker
OpenWrt-Docker copied to clipboard
如何持久化
搜索了一下,两个相关的issue并没有解决这个问题 尝试对比安装插件前和安装插件后,得到产生变化的目录 /bin /lib /etc /usr/bin /usr/lib /usr/share /usr/libexec /usr/sbin
如果从容器拷贝文件出来并影射了这些目录,再次启动会有一堆报错,估计是软链接或者特殊文件产生的问题
所以,到底应该怎么实现持久化呢?
这是我的docker-compose文件
version: "2"
services:
lede:
image: suling/openwrt-mini:x86_64
privileged: true
volumes:
- ./data/bin:/bin
- ./data/lib:/lib
- ./data/etc:/etc
- ./data/usr/bin:/usr/bin
- ./data/usr/lib:/usr/lib
- ./data/usr/share:/usr/share
- ./data/usr/libexec:/usr/libexec
- ./data/usr/sbin:/usr/sbin
privileged: true
networks:
- macvlan
restart: unless-stopped
networks:
macvlan:
driver: macvlan
driver_opts:
parent: eth0
ipam:
config:
- subnet: '192.168.1.0/24'
gateway: '192.168.1.1'
应该只是这些目录下的部分文件有新增或修改,如果直接将整个目录映射出去,好多文件就丢失了,肯定要报错。 得找到具体新增或修改的文件,再做具体文件或目录的映射。
@xwgli 不是的,我映射的这些目录,是我从容器里面拷贝出来的,docker cp -r xxx:./xxx 所以文件并没有少。可能是部分特殊文件无法拷贝导致的报错吧
唔,那有可能是文件权限的变化?或者有些是链接?复制出来就不对了
同样的问题,映射出来,就会出现一些莫名其妙的问题,
毕竟op是个系统。涉及到目录太多了。