我正在尝试让Jenkins运行并使用GitHub托管存储库(使用Jenkins Git插件).存储库有多个git子模块,所以我不确定我是否想尝试管理多个部署密钥.
我个人的GitHub用户帐户是我希望用Jenkins引入的每个项目的合作者,因此我在其中生成了一个SSH密钥/var/lib/jenkins/.ssh并将其添加到我的个人GitHub帐户中.
但是,当我尝试将存储库URL添加到我的Jenkins项目配置时,我得到:
Failed to connect to repository : Command "git ls-remote -h git@github.com:***/***.git HEAD" returned status code 128:
stdout:
stderr: Host key verification failed.
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)
同样,当我安排构建时,我得到:
stderr: Host key verification failed.
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)
我也尝试过设置这里概述的SSH配置文件,但无济于事.
谁能摆脱任何光明?谢谢
编辑
我应该补充一点,我正在运行CentOS 5.8
来自PHP/MySQL背景,我在构建和保存数据方面遇到了最佳实践.
我正在尝试创建一个小应用程序,我可以添加多种成分的食谱.我有一堆预先填充的成分作为种子数据,其架构如下所示:
var IngredientSchema = new Schema({
name: {
type: String,
trim: true,
required: true,
index: {
unique: true
}
},
created: {
type: Date,
default: Date.now
}
});
var Ingredient = mongoose.model('Ingredient', IngredientSchema);
Run Code Online (Sandbox Code Playgroud)
配方目前看起来像这样:
var RecipeSchema = new Schema({
name: {
type: String,
trim: true
},
ingredients: [
{
type: Schema.Types.ObjectId,
ref: 'RecipeIngredient'
}
],
created: {
type: Date,
default: Date.now
}
});
var Recipe = mongoose.model('Recipe', RecipeSchema);
Run Code Online (Sandbox Code Playgroud)
最后,我有一个RecipeIngredientSchema.现在,这是我的MySQL背景可能正在蔓延的地方; 我这样做的原因是因为我想要食谱和配料之间的一对多关系,但我也希望能够指定一个单位:
var RecipeIngredientSchema = new Schema({
recipe: {
type: Schema.Types.ObjectId, …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用作曲家加载我在BitBucket上托管的库,如官方文档和此处所述,但仍然收到以下错误:
[Composer\Repository\InvalidRepositoryException]
No valid composer.json was found in any branch or tag of [repository URL], could not load a package from it.
Run Code Online (Sandbox Code Playgroud)
这是我的项目 composer.json:
{
"name": "Project name",
"require": {
"my-vendor/my-package": "dev-master"
},
"repositories": [
{
"type": "vcs",
"url": [repository URL]
}
]
}
Run Code Online (Sandbox Code Playgroud)
这是我的远程存储库中的composer.json(显然无法找到):
{
"name": "my-vendor/my-package",
"version": "0.3",
"autoload": {
"psr-0": {
"NS_": "src"
}
}
}
Run Code Online (Sandbox Code Playgroud)
我应该提一下,两个composer.json文件都应该在根目录中.
其他一些注意事项:
我还尝试了"非作曲家包"方法,我在项目composer.json中指定了包信息,并省略了远程存储库中的composer.json,如文档中所述.这成功克隆了主分支,但随后导致以下错误:
[RuntimeException]
Failed to execute git checkout "master" && git reset --hard …Run Code Online (Sandbox Code Playgroud) 我是服务器管理的新手,所以我正在寻找一些正确设置DNS的帮助,并且通常会扩展我对该区域的了解.我有一段时间在Godaddy注册的域名.我最近设立了一个独立公司的VPS,我希望将我的Godaddy注册域名指向我的新服务器.
根据我的阅读,我可以将我的Zone文件的A记录指向我的新服务器IP,或者我可以将我当前的Godaddy Nameservers指向我的新服务器(这会使用我的新服务器的DNS? - 我假设这个需要在我的VPS上做更多的工作).任何人都可以为我确认这一点,并可能解释为什么一个优先于另一个和/或明确的差异是什么?
我正在运行CentOs 5.8.
感谢您提供正确方向的任何提示,建议和推动.
我已经浏览了互联网,似乎无法找到解决我遇到的问题的方法.我正在尝试使用Zend_Currency来获取中国的货币,如下所示:
$currency = new Zend_Currency('CN');
Run Code Online (Sandbox Code Playgroud)
但是,我一直收到以下错误:
Fatal error: Uncaught exception 'Zend_Currency_Exception' with message 'No region found within the locale 'zh'' in /Library/WebServer/Documents/vendor/zendframework/zendframework1/library/Zend/Currency.php on line 561
Run Code Online (Sandbox Code Playgroud)
这是在Zend Framework 1.12.3的全新安装上,据我所知,我在这里没有做任何不正确的事情.从错误中我可以看出Zend已将国家/地区代码与区域设置相匹配.
这是一个问题,因为我的应用程序依赖于从国家/地区代码获取货币信息.我对GB,US等没有任何问题.
我已经查看Zend/Locale/Data并且可以确认zh.xml,zh_CN.xmllocale文件在那里,但我承认我不是100%我在寻找每个!
任何人对这个问题是什么以及如何解决这个问题都有任何想法?
谢谢
编辑:
这是一个反映评论讨论的编辑.
似乎Zend_Locale zh在给定国家代码时返回CN,而不是预期的字符串zh_CN.这意味着我无法找到任何可以传递给Zend_Currency以避免错误的一致性.
我试图限制端口9200上对elasticsearch的直接访问,但允许Nginx代理传递给它.
这是我目前的配置:
server {
listen 80;
return 301;
}
server {
listen *:5001;
location / {
auth_basic "Restricted";
auth_basic_user_file /var/data/nginx-elastic/.htpasswd;
proxy_pass http://127.0.0.1:9200;
proxy_read_timeout 90;
}
}
Run Code Online (Sandbox Code Playgroud)
这几乎与我想要的一样.我可以在端口5001上访问我的服务器以访问elasticsearch,并且必须按预期输入凭据.
但是,我仍然可以点击:9200并避免HTTP身份验证,这会失败.如何在不限制nginx的情况下阻止访问此端口?我试过这个:
server {
listen *:9200;
return 404;
}
Run Code Online (Sandbox Code Playgroud)
但我得到:
nginx: [emerg] bind() to 0.0.0.0:9200 failed (98: Address already in use)
Run Code Online (Sandbox Code Playgroud)
因为它与elasticsearch冲突.
必须有办法做到这一点!但我想不出来.
编辑:
我根据评论编辑并总结了问题:
我想锁定<serverip>:9200,基本上只允许通过端口5001(在HTTP Auth后面)进行访问.5001应代理到127.0.0.1:9200,以便只能通过5001访问elasticsearch.所有其他访问应该是404(或301等).
我正在尝试索引Sphinx中非软删除的记录:
source users : base
{
sql_query = \
SELECT Id, Name, Transport, Deleted \
FROM profiles \
WHERE Deleted IS NULL
sql_attr_uint = Transport
}
Run Code Online (Sandbox Code Playgroud)
我的索引这个源代码完全可以返回所有需要的记录,直到我添加WHERE语句:
ERROR: unknown key name 'WHERE' in path/to/sphinx.conf line 22 col 8
Run Code Online (Sandbox Code Playgroud)
我在其他来源中有WHERE语句按预期工作,但是当我尝试时似乎没有用Deleted IS NULL.
有没有人对这个问题有什么想法?从我的源代码中过滤删除是否更好?
我应该注意到我正在开发Windows,因此它作为Windows服务运行.
谢谢
我有一个实现postLoad生命周期事件方法的实体.此方法有条件地更新实体并尝试保存它.有点像:
/**
* @PostLoad
*/
public function checkExpiryDate()
{
$currentDate = new App_Date();
// Check the expiry date here
if($currentDate->getTimestamp() > $this->getDateExpired()->getTimestamp()) {
$this->Status = "expired";
$this->ServiceLayer->saveEntity($this);
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我收到以下错误:
Call to a member function fetch() on a non-object in Doctrine/ORM/Internal/Hydration/ObjectHydrator.php on line 149
Run Code Online (Sandbox Code Playgroud)
看来我在postLoad期间无法保存实体.
我偶然发现了这张票,建议在新密钥下注册ObjectHydrator并在任何新查询期间指定保温器.
但是,我想知道是否有一种很好的方法可以在更抽象的层面上实现它; 每当在postLoad调度期间构建查询时,我想自动注册一个新的ObjectHydrator.
此外,任何人都可以首先简要解释为什么这是一个问题?从我可以看到,一旦使用保湿器就会删除查询,但是我不明白为什么这会在构建新查询时出现问题,即使重新使用保湿器也是如此.
感谢您的任何指示!
我有一个PHP应用程序,由多个域使用.为了避免维护多个vhost,我只设置了一个"默认"Apache vhost来将任何传入请求引导到服务器到应用程序目录.
我想要做的是根据命中服务器的主机名动态设置Apache访问和错误日志路径.
例如,我想将日志路径设置为:
/var/log/application_name/example.com/error.log
/var/log/application_name/example.com/access.log
Run Code Online (Sandbox Code Playgroud)
当提出请求时example.com.
有可行的方法吗?我已经看过使用任何Apache环境变量,但是因为这些是在捕获请求时设置的,所以我认为这些变量不能用于ErrorLog或CustomLog指令.是否只需要在应用程序级别(即在PHP中)手动设置日志目录?
谢谢
我刚刚将Zend项目上传到我的CentOS服务器.我正在使用Doctrine ORM,所以这要求我说明我正在使用的命名空间.
我的项目在我的Windows机器上运行正常,但是当我尝试在服务器上运行它时,我得到了
Parse error: syntax error, unexpected T_STRING, expecting T_CONSTANT_ENCAPSED_STRING or '(' in ************/Bootstrap.php on line 2
Run Code Online (Sandbox Code Playgroud)
错误.第2行是
use Doctrine\ORM\EntityManager,
Doctrine\ORM\Configuration;
Run Code Online (Sandbox Code Playgroud)
我对Linux很新,也许我认为它的Linux有问题我错了,所以如何解决这个错误呢?
谢谢