You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker持久化Dockovpn配置的路径疑问及方案咨询

Docker持久化Dockovpn配置的路径疑问及方案咨询

嗨,我来帮你拆解这个问题~

关于/opt/Dockovpn_data找不到的原因

你之前用的命令-v openvpn_conf:/opt/Dockovpn_data,其实是创建了一个Docker命名卷,而非绑定主机本地的文件夹!所以主机上自然看不到/opt/Dockovpn_data——因为openvpn_conf是Docker后台管理的存储卷,它的实际物理路径在Docker的内部目录(一般是/var/lib/docker/volumes/openvpn_conf/_data),但不建议直接操作这个路径。

如果想让配置文件存到你主机的/opt/Dockovpn_data目录,得用绑定挂载的写法:把命令改成-v /opt/Dockovpn_data:/opt/Dockovpn_data。注意要先在主机上手动创建这个文件夹:

sudo mkdir -p /opt/Dockovpn_data
# 调整权限确保容器能读写,可根据实际情况修改
sudo chown -R $USER:$USER /opt/Dockovpn_data

要不要用docker commit?

非常不建议用docker commit来持久化配置!这种方式会把容器的当前状态打包成新镜像,后续如果镜像更新、重新部署,你的配置会被覆盖,而且镜像会变得臃肿,维护起来特别麻烦。

正确的姿势还是用卷挂载(不管是命名卷还是绑定挂载),把配置和容器本身分离,这样更新容器、迁移配置都更灵活。

快速修正步骤

  1. 先停止当前运行的Dockovpn容器:
docker stop <你的容器名称或ID>
  1. 选择适合你的挂载方式重新启动:
    • 绑定到主机/opt/Dockovpn_data:
      docker run -v /opt/Dockovpn_data:/opt/Dockovpn_data 其他启动参数...
      
    • 继续用Docker命名卷(已经自动创建了openvpn_conf卷,配置已经存在里面):
      可以用docker volume inspect openvpn_conf查看卷的详细信息,或者用下面的命令查看卷内内容:
      docker run --rm -v openvpn_conf:/data alpine ls /data
      

备注:内容来源于stack exchange,提问作者Alexey Starinsky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 14:59:33