小编And*_*inn的帖子

推送时出现Git错误:object 15abe3addde5ad5f7d25e8f0f220d2e9faf3cb22:包含指向null的条目

我不确定自己是如何陷入这个烂摊子的.但是我error: object 15abe3addde5ad5f7d25e8f0f220d2e9faf3cb22:contains entries pointing to null试图将我的存储库推送到GitHub时遇到了.全力推动:

[ashinn@puppet1 puppet]$ git push
Counting objects: 27, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (11/11), done.
Writing objects: 100% (16/16), 5.67 KiB, done.
Total 16 (delta 6), reused 14 (delta 4)
error: object 15abe3addde5ad5f7d25e8f0f220d2e9faf3cb22:contains entries pointing to null sha1
fatal: Error in object
error: unpack failed: index-pack abnormal exit
To git@github.com:andyshinn/puppet.git
 ! [remote rejected] ganglia -> ganglia (unpacker error)
 ! [remote rejected] master -> master (unpacker error) …

git version-control git-submodules

14
推荐指数
1
解决办法
5790
查看次数

EGit显示目录总是很脏

我开始在eclipse中使用EGit,我的一个目录(包含许多子模块和常规目录)总是显示为脏.我试图git reset --hard从头开始重新创建项目.如果我选择目录并与Git index或HEAD比较,则不会显示任何更改.

如果我在文件夹的命令行上使用git,git status则不显示任何挂起的更改并git submodule正确列出所有子模块.使用EGit,我试图设置Assume Unhanged选项.但是这也传播到子目录(这是不可取的).

我使用的是Eclipse 4.2.1,EGit 2.1.0和Geppetto 3.0.0.还有什么可能导致此目录始终显示为脏?任何方式只是忽略对此目录的更改(但仍然更改为兄弟姐妹)?

更新 - 2013年10月2日:

更新 - 2014年9月24日:

  • https://bugs.eclipse.org/bugs/show_bug.cgi?id=429304还有一个附带的漏洞错误,可以针对EGit特有的问题进行跟踪.
  • 我不再使用Eclipse或EGit,而是使用Git Plus插件转移到Atom.当问题得到解决时,我会尝试继续更新.但Atom和Git Plus现在让我更好,这个问题目前与我无关.

git eclipse-plugin egit

13
推荐指数
1
解决办法
1674
查看次数

在应用环境中使用链接容器环境变量?

我有一个使用名为的环境变量的应用程序REDIS_URL.典型的REDIS_URLredis://172.17.0.5:6379/0.我希望能够REDIS_URL基于容器链接进行填充:

docker run --name redis -d redis
docker run --name firehose --link redis:redis -e REDIS_URL="redis://$REDIS_PORT_6379_TCP_ADDR:$REDIS_PORT_6379_TCP_PORT/0" -d firehose/server
Run Code Online (Sandbox Code Playgroud)

但是根据我如何逃避环境变量,它们要么在我的shell中在docker运行时进行求值并且是blank(redis://:/0),要么作为文字字符串(redis://$REDIS_PORT_6379_TCP_ADDR:$REDIS_PORT_6379_TCP_PORT/0)传递.

如何REDIS_URL基于conatiner链接填充我的应用程序环境变量?

docker

9
推荐指数
1
解决办法
5221
查看次数

如何使用大写环境变量设置Spring camel case属性?

我有一些代码在我的Spring应用程序中加载一个值:

@Component
public class MyElasticRestService {
    @Value("${elasticApi.baseURL}")
    private String elasticApiBaseUrl;
Run Code Online (Sandbox Code Playgroud)

根据Spring文档,我应该能够使用来自大写环境变量(例如ELASTIC_API_BASE_URL或)的宽松绑定ELASTICAPI_BASEURL.但我很困惑哪个是正确的.两者似乎都不起作用所以我想知道如何调试实际拾取的内容.

我已经加载了Spring Boot Actuator来查看configprops端点.但它的elasticApi前缀没有任何内容.

正确的环境变量应该是什么?如何才能看到它如何被应用程序翻译和拾取?

spring spring-boot

9
推荐指数
2
解决办法
6557
查看次数

如何根据环境或服务器属性运行Capistrano任务?

我在命名空间中有一个命名空间和几个任务,在deploy:updated之后运行.这是一个例子:

namespace :myservice do
  task :start do
    on roles(:app) do
      sudo :start, "my/application"
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

我喜欢这些任务中的一个只能在特定环境或主机属性上运行.我怎么能做到这一点?

我希望能够过滤环境,例如:

namespace :myservice do
  task :start do
    on roles(:app), env(:vagrant) do
      sudo :start, "my/application"
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

完成此任务的最佳方法是什么?

capistrano capistrano3

8
推荐指数
1
解决办法
997
查看次数

如何在Vagrant中为多机环境指定配置器默认值?

我想知道在使用Vagrant创建多机环境时是否有办法为配置程序指定默认值?

我试图做类似以下的事情:

Vagrant.configure("2") do |config|
  config.vm.box = "andyshinn/ubuntu-precise64"

  config.vm.provision :chef_client do |chef|
    chef.chef_server_url = "https://api.opscode.com/organizations/myorg"
    chef.validation_key_path = "~/.chef/myorg-validator.pem"
    chef.delete_node = true
    chef.delete_client = true
    chef.validation_client_name = "myorg-validator"
  end

  config.vm.define :app do |app|
    app.vm.network "private_network", ip: "172.16.64.61"
    app.vm.host_name = "vagrant-app-#{ENV['USER']}"

    app.vm.provision :chef_client do |chef|
      chef.add_recipe "myrecipe1"
      chef.add_recipe "myrecipe2"
      chef.add_recipe "sudo"
    end
  end

  config.vm.define :web do |web|
    web.vm.network "private_network", ip: "172.16.64.62"
    web.vm.host_name = "vagrant-web-#{ENV['USER']}"

    web.vm.provision :chef_client do |chef|
      chef.add_recipe "myrecipe3"
      chef.add_recipe "myrecipe4"
      chef.add_recipe "sudo"
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

但是每个VM块似乎都没有获取任何主配置块设置.我收到此错误:

There are errors in …
Run Code Online (Sandbox Code Playgroud)

vagrant vagrantfile

7
推荐指数
1
解决办法
1718
查看次数

在构建Docker镜像时无法使用私钥进行SSH

在Docker镜像构建期间,我无法检查托管在GitHub上的私有git存储库.SSH在详细模式下的错误是:

OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to github.com [192.30.252.130] port 22.
debug1: Connection established.
debug1: permanently_set_uid: 0/0
debug1: identity file /root/.ssh/id_rsa type -1
debug1: identity file /root/.ssh/id_rsa-cert type -1
debug1: identity file /root/.ssh/id_dsa type -1
debug1: identity file /root/.ssh/id_dsa-cert type -1
debug1: identity file /root/.ssh/id_ecdsa type -1
debug1: identity file /root/.ssh/id_ecdsa-cert type -1
debug1: identity file /root/.ssh/id_ed25519 type -1
debug1: identity file /root/.ssh/id_ed25519-cert type …
Run Code Online (Sandbox Code Playgroud)

git ssh openssh docker

7
推荐指数
1
解决办法
4304
查看次数

如何记录 Airflow DAG 的输出以进行调试?

我正在编写一个 Airflow DAG 并且在一个函数上遇到了一些问题。我正在尝试通过将数据打印到标准输出并使用logging库来进行调试。

我的示例 DAG 是:

    from datetime import timedelta
    
    import airflow
    import logging
    
    from airflow.models import DAG
    from airflow.operators.dummy_operator import DummyOperator
    from airflow.contrib.hooks.datadog_hook import DatadogHook
    
    def datadog_event(title, text, dag_id, task_id):
        hook = DatadogHook()
        tags = [
            f'dag:{dag_id}',
            f'task:{task_id}',
        ]
    
        hook.post_event(title, text, tags)
    
    def datadog_event_success(context):
        dag_id = context['task_instance'].dag_id
        task_id = context['task_instance'].task_id
        text = f'Airflow DAG failure for {dag_id}\n\nDAG: {dag_id}\nTasks: {task_id}'
        title = f'Airflow DAG success for {dag_id}'
    
        logging.info(title)
        logging.info(text)
        logging.info(dag_id)
        logging.info(task_id)
    
        datadog_event(title, text, dag_id, task_id)
    
    args = …
Run Code Online (Sandbox Code Playgroud)

datadog airflow

5
推荐指数
1
解决办法
5712
查看次数

在Dockers中对端点进行REST调用

我正在构建一个Spring Boot应用程序,它具有几个不同的REST端点。可以将其本地打包并成功作为jar文件启动。在本地运行时,我可以通过“ http:// localhost:8080 / endpoint?params ..” 访问其端点。我的任务是现在准备将此应用程序运行在Docker之外。仍在我的本地计算机上工作,我基于Java:8映像创建了一个Dockers容器。在此容器中,我已经能够从.jar成功运行我的应用程序。我的问题是,当从Docker托管应用程序时,我不理解如何调用应用程序内的REST端点,因为从逻辑上讲localhost:8080 / endpoint不再响应该调用。

附加信息:我的本地计算机是Windows,Docker映像是Ubuntu(最终将在Linux服务器上启动)。

更新:使用以下Dockerfile创建了一个新映像:

FROM openjdk:8
MAINTAINER  My Name email@email.com
COPY . /usr/src/myapp
WORKDIR /usr/src/myapp
EXPOSE 8080
RUN javac Main.java
CMD ["java", "Main"]
Run Code Online (Sandbox Code Playgroud)

同样的问题,无法通过http:// localhost:8080 / endpoint访问端点

任何帮助将不胜感激。谢谢!

java rest docker spring-boot

2
推荐指数
1
解决办法
8301
查看次数