我正在尝试在OS X Snow Leopard上提供现有的Python 2.5 Pylons应用程序.
我已经安装了Python 2.5并将其设置为默认的Python安装,安装贴纸,并安装了应用程序所需的Pylons版本(0.9.6.1)以及其他鸡蛋...但是当我cd到主文件夹时做"paster serve development.ini"我得到以下内容:
File "/usr/local/bin/paster", line 5, in <module>
from pkg_resources import load_entry_point
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 2603, in <module>
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 666, in require
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 565, in resolve
pkg_resources.DistributionNotFound: PasteScript==1.7.3
Run Code Online (Sandbox Code Playgroud)
我肯定做过"easy_install PasteScript == 1.7.3",但我仍然遇到此错误.有什么东西真的很明显我错过了吗?救命?
提前致谢.
我是金字塔的初学者.
我想将Pyramid部署到我的生产服务器.我有一个使用Capistrano的部署脚本来执行此操作.
set :pid_path, "/var/lib/#{application}"
set :log_path, "/var/log/#{application}"
namespace :deploy do
task :restart, :roles => :app do
end
task :finalize_update, :roles => :app do
run "cd #{release_path} && python setup.py build"
%w[ 5000 5001 ].each do |port|
run "if [ -f #{pid_path}/#{port}.pid ]; then paster serve --stop-daemon --pid-file=#{pid_path}/#{port}.pid; fi"
run "paster serve --daemon --pid-file=#{pid_path}/#{port}.pid --log-file=#{log_path}/paster.log #{release_path}/production.ini http_port=#{port}"
end
end
end
Run Code Online (Sandbox Code Playgroud)
但是如果没有安装输入'sudo python setup.py install',它就无法工作.如果我编写代码来执行此操作,它可能会工作但我不想因为权限而这样做.
有人有什么建议吗?
在OSX 10.9上本地安装CKAN,基于http://docs.ckan.org/en/latest/maintaining/installing/install-from-source.html.
我创建并激活了python virtualenv,现在需要创建一个CKAN配置文件:
$ paster make-config ckan /etc/ckan/default/development.ini
Run Code Online (Sandbox Code Playgroud)
输出如下(最后一行的ImportError):
Distribution already installed:
ckan 2.2 from ~/ckan/lib/default/src/ckan
Traceback (most recent call last):
File "/usr/lib/ckan/default/bin/paster", line 9, in <module>
load_entry_point('PasteScript==1.7.5', 'console_scripts', 'paster')()
File "/usr/lib/ckan/default/lib/python2.7/site-packages/paste/script/command.py", line 104, in run
invoke(command, command_name, options, args[1:])
File "/usr/lib/ckan/default/lib/python2.7/site-packages/paste/script/command.py", line 143, in invoke
exit_code = runner.run(args)
File "/usr/lib/ckan/default/lib/python2.7/site-packages/paste/script/appinstall.py", line 68, in run
return super(AbstractInstallCommand, self).run(new_args)
File "/usr/lib/ckan/default/lib/python2.7/site-packages/paste/script/command.py", line 238, in run
result = self.command()
File "/usr/lib/ckan/default/lib/python2.7/site-packages/paste/script/appinstall.py", line 295, in command
self.distro, self.options.ep_group, self.options.ep_name)
File …Run Code Online (Sandbox Code Playgroud) 我正在运行pylons,我这样做:paster server development.ini它正在运行:5000
但是当我再次尝试运行命令时:paster serve development.ini
我收到此消息:socket.error:[Errno 98]地址已被使用
有任何想法吗?
当我以守护进程模式启动"粘贴"Web服务器时,它似乎会在更新源文件的时间戳时重新加载它.
以下是我启动守护进程的方法......
cd ${project} && ../bin/paster serve --reload --daemon development.ini; cd ..;
Run Code Online (Sandbox Code Playgroud)
...它击败了使用粘贴的一个要点(对我来说).
有没有人遇到这个或知道我做错了什么?
要完成,我正在更改的文件是控制器文件.
版本是`PasteScript 1.7.3'
我跑了
bin/paster create -t dexterity my.example
运行后,我有以下内容:
bootstrap.py
docs
my.example.egg-info
PasteDeploy-1.5.0-py2.6.egg
plone.cfg
setup.cfg
buildout.cfg
my
Paste-1.7.5.1-py2.6.egg
PasteScript-1.7.5-py2.6.egg
README.txt
setup.py
Run Code Online (Sandbox Code Playgroud)
为什么我还有3个鸡蛋?我的buildout配置错了吗?
我刚刚使用统一安装程序安装了Plone4,当我尝试运行pater命令时出现此错误:
AttributeError: 'module' object has no attribute 'NoDefault'
Run Code Online (Sandbox Code Playgroud)
这时候,我附加了[paster]部分到我的扩建如图所示这里.最初,我的buildout只有没有[zopskel]部分的[paster]部分.
我在 Ubuntu 11.10 的端口 8087 上运行 python paste http 服务器
nmap 说 8087/tcp 是开放的
ufw 防火墙处于非活动状态
但是如果我在另一台本地网络机器上拉起它的本地 ip (192.168.1.50:8087),它就无法连接。
我可以在本地网络机器上 ping 192.168.1.50 正常。但是我无法 telnet 到端口 8087,这告诉我有什么东西阻止了它?
在这里呆了几个小时 0_o
任何帮助表示赞赏
是否有关于如何使用Nginx部署Pylons的教程?
我已经能够启动nginx,然后将pylons服务到:8080 with paster serve development.ini
但是,我似乎无法做其他事情,因为挂架锁定我进入该服务模式.如果我尝试用CTRL + Z从服务器上做其他东西服务器,那么挂架就会掉下来.
必须有不同的部署方法.
PS - 我已经完成了所有这些:http: //wiki.pylonshq.com/display/pylonscookbook/Running+Pylons+with+NGINX?showComments=true#comments
我不知道如何处理除Paster服务之外的Pylons应用程序.不确定tehre是否是一种不同的方法.
我有一个用zc.buildout管理的Pyramid Web应用程序.在其中,我需要读取磁盘上的文件,该文件位于buildout目录的子目录中.
问题是确定文件的路径 - 我不想硬编码绝对路径,只是提供相对路径在生产中提供应用程序时不起作用(据说是因为工作目录不同).
所以我想到的有希望的"钩子"是:
"root"buildout目录,我可以在buildout.cfg中解决${buildout:directory}- 但是,我无法弄清楚如何"导出"它以便Python代码可以访问它
Paster的.ini文件的位置启动应用程序