通过Vagrant中的共享文件访问CKAN源文件 背景信息

通过Vagrant中的共享文件访问CKAN源文件 背景信息,vagrant,ckan,Vagrant,Ckan,我已经将CKAN安装到一个Vagrant环境中,我希望能够在本地机器(不是在Vim over ssh上)的a文本编辑器中查看和编辑配置文件(etc/CKAN)和源文件(/usr/lib/CKAN)。以下是我的文件夹结构: CKAN/ vagrant文件 ckan-config/ ckan source/ 我的VagrantFile中的以下两行允许我查看本地桌面上的ckan config和ckan source文件夹: config.vm.synced_folder "ckan-confi

我已经将CKAN安装到一个Vagrant环境中,我希望能够在本地机器(不是在Vim over ssh上)的a文本编辑器中查看和编辑配置文件(
etc/CKAN
)和源文件(
/usr/lib/CKAN
)。以下是我的文件夹结构:

  • CKAN/
    • vagrant文件
    • ckan-config/
    • ckan source/
我的
VagrantFile
中的以下两行允许我查看本地桌面上的
ckan config
ckan source
文件夹:

config.vm.synced_folder "ckan-config/", "/etc/ckan"
config.vm.synced_folder "ckan-source/", "/usr/lib/ckan"
这是我的问题 上面的第一行同步了
ckan config
文件夹(包含
datapush\u settings.py
,以及
default/development.ini
),效果很好。但是,如果第二行没有注释,那么CKAN就不起作用了。我收到一个500内部服务器错误

我试着注释掉第二行,启动Vagrant框,取消注释,然后运行
Vagrant reload
,但CKAN仍然无法启动。我仍然收到相同的500内部服务器错误

首先,我是如何创建本地文件夹的
  • 创建了一个工作环境
  • vagrant ssh
  • 创建了一个新的git存储库,并在其中添加了
    /etc/ckan
  • 创建了另一个新的git存储库,并在其中添加了
    /usr/lib/ckan
  • 从ssh退出
  • 转到了
    vagrant文件
    所在的同一目录
  • git克隆了这两个存储库
  • 将两行(以上)添加到
    vagrant文件中
  • vagrant重新加载

抱歉发了这么长的邮件。只是想从一开始就把一切都弄清楚。提前感谢您的帮助。

您需要确保
root
用户拥有您的文件夹,当您从本地主机同步文件夹时,默认所有者将是vagrant

使用更改您的设置

config.vm.synced_folder "ckan-config/", "/etc/ckan", owner: "root", group: "root"
config.vm.synced_folder "ckan-source/", "/usr/lib/ckan", owner: "root", group: "root"

您可能还需要检查权限,对于
/usr/lib/ckan
文件夹,您可能需要添加
mount\u选项:[“dmode:775”,“fmode=664”]
这是处理Vagrant和ckan的一个好方法。我建议您从头开始重新创建这两个目录:

  • 将这两行添加到您的文件中
  • vagrant reload
  • vagrant ssh
  • 重新运行三个:“2.将CKAN安装到Python虚拟环境”“4.创建CKAN配置文件”“8.链接到who.ini”
  • 注意:我这样做后遇到了烧杯的问题,这里详细介绍了解决方法:


    通过复制源目录(通过git),您可能已经搞乱了安装或virtualenv的一些细节-例如隐藏文件、符号链接等-并且根据该错误消息,您最终在virtualenv中没有安装CKAN。最好先将这些行添加到您的Vagrant文件中,而不是在安装之后。

    ckan日志说问题出在哪里?@DRead ckan日志在哪里?我在文件里找不到它的任何参考资料
    /var/log/apache2/ckan_default.error.log
    返回大量错误列表。最后一行是:
    [Mon-Mar 27 14:20:20.193664 2017][wsgi:error][pid 1536:tid 140204656879360][remote 127.0.0.1:65016]DistributionNotFound:“ckan”发行版未找到并且是应用程序所需的
    是的,不容易找到,但它在“日志文件”下的文档中在本页中,我充实了这一通用方法,并将其作为wiki页面提供: