我使用本指南在我的Ubuntu 12.04台式机上安装了Jenkins:
https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntu
我还需要遵循本指南:
从我的其他机器(mac笔记本电脑)我现在尝试通过safari访问Jenkins:
http://192.168.1.100/jenkins
Run Code Online (Sandbox Code Playgroud)
192.168.1.100
我的桌面计算机的IP地址在哪里,但我收到错误404.我也尝试过:
http://jenkins
Run Code Online (Sandbox Code Playgroud)
但没有任何反应.我错过了什么?
Jenkins服务正在我的桌面PC上运行:
service jenkins status
...
Jenkins Continuous Integration Server is running with the pid 3713
Run Code Online (Sandbox Code Playgroud)
如果我输入:localhost:8080
在我的台式机上的浏览器中,我得到了jenkins网络界面.
问题已解决:我已按照本指南:
http://www.zzorn.net/2009/11/setting-up-hudson-on-port-80-on-debian.html
它现在有效.
我已经构建了一个 docker 映像,其中包含tshark
(它是我将用于从 kubernetes pod 进行各种手动调试的映像)。
我已经在运行该映像的 kubernetes 中部署了一个容器。但是当我访问容器并尝试运行时,tshark
我得到:
$ kubectl exec myapp-cbd49f587-w2swx -it bash
root@myapp-cbd49f587-w2swx:/# tshark -ni any -f "test.host" -w sample.pcap -F libpcap
Running as user "root" and group "root". This could be dangerous.
Capturing on 'any'
tshark: cap_set_proc() fail return: Operation not permitted
Run Code Online (Sandbox Code Playgroud)
谷歌搜索该错误:
https://www.weave.works/blog/container-capabilities-kubernetes/ https://unofficial-kubernetes.readthedocs.io/en/latest/concepts/policy/container-capabilities/
看来我需要securityContext
为我的容器/吊舱配置一个。在我的 deployment.yaml 中,我添加了:
containers:
...
securityContext:
capabilities:
add:
- NET_ADMIN
Run Code Online (Sandbox Code Playgroud)
但是当我应用该部署时,我得到:
error: error validating "deployment.yaml": error validating data: ValidationError(Deployment.spec.template.spec.securityContext): unknown field "capabilities" in io.k8s.api.core.v1.PodSecurityContext; if …
Run Code Online (Sandbox Code Playgroud) 我有一个java应用程序,它读取包含一堆.jar文件的资源文件夹.对于其中一些.jar文件,必须根据默认架构创建相应的JNLP文件并将其存储在同一目录中.
有没有很好的方法从Java应用程序创建这些JNLP文件(并且可能会将.jar文件中的一些数据添加到jnlp节点中)?
我正在使用grunt/qunit运行javascript单元测试.有时测试失败是因为源文件中存在语法错误(如果在测试文件中引入了语法错误,则可以正常使用文件信息).当发生这种情况时,grunt只会打印行号而不是问题所在的文件.
Running "qunit:all" (qunit) task
Warning: Line 99: Unexpected identifier Use --force to continue.
Aborted due to warnings.
Run Code Online (Sandbox Code Playgroud)
这没有多大帮助,因为我有100个js文件.我调查过:
https://github.com/gruntjs/grunt-contrib-qunit
并尝试将以下内容添加到我的Gruntfile.js(grunt.event.on):
module.exports = function(grunt) {
"use:strict";
var reportDir = "output/reports/"+(new Date()).getTime().toString();
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
qunit: {
options: {
'--web-security': 'no',
coverage: {
src: ['../src/**/*.js'],
instrumentedFiles: 'output/instrument/',
htmlReport: 'output/coverage',
coberturaReport: 'output/',
linesTresholdPct: 85
}
},
all: ["testsSuites.html"]
}
});
// Has no effect
grunt.event.on('qunit.error.onError', function (msg, stack) {
grunt.util._.each(stack, function (entry) {
grunt.log.writeln(entry.file + ':' + entry.line);
});
grunt.warn(msg);
});
grunt.loadNpmTasks('grunt-contrib-qunit'); …
Run Code Online (Sandbox Code Playgroud) 在 groovy 脚本中,我在 linux 和 windows 上执行一个应用程序:
def proc = command.execute()
proc.consumeProcessOutput( System.out, System.err)
println "here"
proc.waitFor()
println "never here"
Run Code Online (Sandbox Code Playgroud)
但 waitFor() 调用永远不会返回。奇怪的是,它只发生在 linux 上。
这可能是由于未从适当的流中读取而引起的。但是正如您所看到的,我同时使用 System.out 和 System.err。是否还有其他可以使用的流?
似乎只能使用以下方法通过 FTP 上传文件:
https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+FTP+Plugin
但是我需要通过 FTP 下载一个文件,我可以为此编写一个 groovy 插件,但似乎没有插件
我在Windows 7上运行Team City 8.1.2,并在与服务器相同的计算机上使用单个代理程序.代理和服务器都在可以访问我的Git Repo的帐户下运行.
我用Git VCS创建了一个工作并选择了:
VCS签出模式:自动启动代理(如果VCS根支持)
但结果它只是在运行git fetch时挂起:
[16:12:49][VCS Root: git] Commit '092a67f48d5bdbfaf946e1ed93bdcb81d6e373b0' is not found in repository. Running 'git fetch'...
Run Code Online (Sandbox Code Playgroud)
现在,如果我选择:
VCS结帐模式:自动在服务器上
有用.
如何让它在代理上工作?
我有一个几个月大的git repo.是否可以计算/绘制内部git存储库的大小(以MB为单位)(压缩大小)作为提交到远程的提交(或该事项的日期)的函数?
由于分支可以并行开发,因此给定的提交可能不会反映被推送到另一个分支的更改.
因此,每天都有一个运行git pull的CI工作,然后是:https: //git-scm.com/docs/git-count-objects
并将结果存储在db中可能是一种方法.这假定在创建存储库的同一天激活CI作业.
如果有可能在现有的存储库中及时计算这些信息,那就太棒了.
我知道使用提交并没有多大意义.我希望通过某种方式了解它如何随着时间的推移而增加尺寸,就像它们在这里一样:http: //blogs.wandisco.com/2013/08/23/git-repository-metrics/
我有一个git存储库,.git
文件夹是7MB.然后我添加并提交了一个16MB的.exe文件,后跟:
git gc --aggressive && git prune
Run Code Online (Sandbox Code Playgroud)
以上我的.git
文件夹现在是23MB.
接下来我做了一个git rebase -i
选定的下拉:
在引入16MB文件的提交(c8185ff)上,我完成了rebase并再次运行:
git gc --aggressive && git prune
Run Code Online (Sandbox Code Playgroud)
现在当我测量.git
文件夹时它仍然是23MB.
应该git rebase
在上面执行不完全从历史记录中删除提交 - 好像文件从未被引入 - 因此将.git
文件夹恢复到7MB大小?
我还试图对存储库进行全新的克隆,大小仍然是23MB - 我假设在进行新的克隆时将清除reflog.
我正在尝试使用本指南:
https://docs.docker.com/engine/examples/running_ssh_service/#run-a-test_sshd-container
要对正在运行的容器执行普通 SSH,首先尝试获取运行容器的 ip 地址:
$ sudo docker inspect 4b928aca09ae
"NetworkSettings": {
"Bridge": "",
"SandboxID": "74ce28dd93a6fa6158ebc3f4ec73f1dba74ddbfc183f4ebf9cca77ced2571174",
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"Ports": {
"22/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "32768"
}
]
},
"SandboxKey": "/var/run/docker/netns/74ce28dd93a6",
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"EndpointID": "5927380d426ce9d5684dc17982c7f01af38d850218aa476d6ed8f457c8a39165",
"Gateway": "172.17.0.1",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "172.17.0.8",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"MacAddress": "02:42:ac:11:00:08",
"Networks": {
"bridge": {
"IPAMConfig": null,
"Links": null,
"Aliases": null,
"NetworkID": "9c02e185366bb205bded7cab97766cb0e91315a4317affedc98f299831d5ceae",
"EndpointID": "5927380d426ce9d5684dc17982c7f01af38d850218aa476d6ed8f457c8a39165",
"Gateway": "172.17.0.1",
"IPAddress": "172.17.0.8",
"IPPrefixLen": 16,
Run Code Online (Sandbox Code Playgroud)
基于上述,我试图:
$ ssh …
Run Code Online (Sandbox Code Playgroud) git ×3
docker ×2
jenkins ×2
apache2 ×1
filesize ×1
ftp ×1
groovy ×1
gruntjs ×1
java ×1
javascript ×1
jnlp ×1
kubernetes ×1
process ×1
repository ×1
ssh ×1
teamcity ×1
tshark ×1
unit-testing ×1