小编lol*_*ski的帖子

如何列出npm用户安装的软件包?

如何仅列出用户安装的软件包npm?当我这样做npm -g list时输出每个包及其依赖项,这不是我想要的.

package-managers node.js npm

529
推荐指数
16
解决办法
27万
查看次数

构建一个与现有镜头同名的新docker镜像

如果我构建一个与现有镜头同名的新docker镜像,是否会覆盖旧镜头?

docker

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

重置/更改bootstrap词缀的偏移量

如何将Affix(Twitter Bootstrap 3)的偏移量更改为其他值?

当我试图像这样两次调用方法时,第二个似乎被忽略并且没有任何效果:

$('#navbar-main').affix({ offset: 100});
$('#navbar-main').affix({ offset: 200}); // ---> the offset will not change to 200px
Run Code Online (Sandbox Code Playgroud)

在第二次.affix调用之前重置回调affix也无济于事:

$('#navbar-main').affix({ offset: 100});
$(window).off('.affix');
$('#navbar-main').affix({ offset: 200}); // ---> the offset will not change to 200px
Run Code Online (Sandbox Code Playgroud)

twitter-bootstrap twitter-bootstrap-3

12
推荐指数
2
解决办法
8482
查看次数

清洁解决方案,用于在程序执行过程中放入REPL控制台

有什么工作解决方案可以放入REPL控制台与Scala 2.10?

这主要用于调试目的 - 我想在执行过程中暂停,并且有一个REPL控制台,我可以在当前执行状态下使用程序中的复杂表达式检查值并测试程序的逻辑.那些使用Ruby编程的人可能知道类似的功能:binding.pry.

AFAIK,Scala 2.9及以下曾经有过,breakIf但它已从更高版本中删除.使用ILoop似乎是新的方式,但由于sbt没有将scala-library添加到类路径而引入了问题.

这样这样的几个解决方案似乎提供了一个很好的解决方法,但我的观点是必须有一个解决方案,我不必花费数小时甚至数天来使REPL工作.

简而言之,涉及更多的样板步骤 - 与此相反,binding.pry这只是一行代码,没有额外的样板.

我不知道在执行程序作为sbt任务时是否存在问题,而不是直接运行程序可执行文件,但出于开发目的,我正在运行并使用sbt任务测试我的程序.

scala sbt scala-2.10

11
推荐指数
1
解决办法
931
查看次数

Docker中的RabbitMQ - 用户创建不会持久化

我有一个问题,用户user1没有持久保存在我使用以下Dockerfile创建的容器中.这是什么原因?这是RabbitMQ的具体问题吗?例如,我必须明确指定必须持久保存用户

FROM dockerfile/rabbitmq

# Define mount points.
VOLUME ["/data/log", "/data/mnesia"]

# Define working directory.
WORKDIR /data

RUN (rabbitmq-start &) && \
  sleep 10 && \
  rabbitmqctl add_user user1 password1 && \
  rabbitmqctl set_user_tags user1 administrator && \
  rabbitmqctl set_permissions -p / user1 ".*" ".*" ".*"  && \
  sleep 10 && \
  rabbitmqctl stop && \
  sleep 10
# Define default command.
CMD ["rabbitmq-start"]

# Expose ports.
EXPOSE 5672
EXPOSE 15672
Run Code Online (Sandbox Code Playgroud)

rabbitmq docker

11
推荐指数
2
解决办法
4580
查看次数

没有看到大使模式如何增强Docker中容器架构的模块性/简单性

我没有看到实施大使模式将如何帮助我们简化/模块化容器架构的设计.

假设我db在主机A上有一个数据库容器,由db-client位于主机B上的程序使用,它通过大使容器db-ambassadordb-foreign-ambassador网络连接:

[host A (db) --> (db-ambassador)] <- ... -> [host B (db-forgn-ambsdr) --> (db-client)]
Run Code Online (Sandbox Code Playgroud)

在同一台机器容器之间的连接,例如dbdb-ambassador,并db-foreign-ambassadordb-client通过多克的做--link参数,而db-ambassadordb-foreign-ambassador在网络上的谈判.

但是,--link这只是一种将IP地址,端口和其他信息从一个容器插入另一个容器的奇特方式.当容器发生故障时,与其链接的另一个容器不会得到通知,也不会在重新启动时知道崩溃容器的新IP地址.简而言之,如果一个与另一个连接的容器死了,那么这个链接也已经死了.

考虑我的例子,让我们说db崩溃并重新启动,从而分配给不同的IP.db-ambassador也必须重新启动,以便更新它们之间的链接......除非你不应该.如果db-ambassador重新启动,IP也会发生变化,并且foreign-db-ambassador无法知道在新IP地址的位置.

在Docker关于大使模式的文档中引用一篇文章,

当您需要重新连接消费者以与不同的Redis服务器通信时,您可以重新启动消费者连接的redis-ambassador容器.

此模式还允许您将Redis服务器透明地移动到与使用者不同的docker主机.

看起来这正是它试图解决的问题.就我的理解而言,它完全没有.如果您认为--link只有链接容器不崩溃才会有用.如果支持,在其先前的IP上启动崩溃节点的选项将是一个很好的解决方法,至少对于小型/中型架构而言.

我错过了一些明显的东西吗

docker

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

覆盖tmux快捷方式

是否可以更改tmux快捷方式:

  1. ctrl+ t打开新窗口
  2. ctrl+ w关闭一个窗口
  3. ctrl+ tab循环浏览一系列窗口
  4. 用于水平/垂直分割的其他类似快捷方式

我真的很喜欢它的功能,但我总是认为我必须学习的捷径越少越好.

terminal tmux

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

通过脚手架生成的控制器上的空(但工作)显示方法?

如何show通过rails generate scaffold xxx空生成的控制器类上的方法/不包含代码?通过URL显示单个记录的代码在哪里,例如/my_rails_app:3000/xxx/1存储?

该方法至少应该像IMO一样:

class ProductController
  # GET /students/1
  # GET /students/1.json
  def show
    @item = Product.find(params[:id])
    render @item
  end
end
Run Code Online (Sandbox Code Playgroud)

但它完全是空的:

class ProductController
  # GET /students/1
  # GET /students/1.json
  def show

  end
end
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-4

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

Docker中的端口转发Rails应用程序似乎导致CSRF异常

我有一个Rails应用程序在Docker容器中运行,该容器被分配了一个ip 172.17.0.3.对主机的传入请求将51.x.x.x转发到rails应用程序中172.17.0.3.更具体地说,这样做是这样的:

docker run -p 8080:8080 rails_app
Run Code Online (Sandbox Code Playgroud)

但是,Can't verify CSRF token authenticity当用户尝试访问某些页面时,Rails应用程序会抛出错误.我怀疑Rails认为传入的请求是攻击,因为目标的ip与Rails应用程序的ip不匹配 - 即用户请求被定向到主机51.x.x.x,而Rails的实际位置是172.17.0.3

有什么方法让我告诉Rails这些请求是合法的吗?作为附加信息,我devise用于身份验证,并unicorn用作服务器.

有些人可能会倾向于建议更改protect_from_forgery with: :exception:null_session,但是当没有放在后面的代理应用程序的工作就好了.此外,当我改变那部分时,一些逻辑将不起作用,因为我认为设置会混淆用户会话的处理方式.

这是我的网络布局:

(user from public network) ----> (proxy) ----> (rails app on a private network)
        (202.x.x.x)            (51.x.x.x)               (172.x.x.x)
Run Code Online (Sandbox Code Playgroud)

编辑:该应用程序在development设置中.这是我在log/development.log文件中得到的错误.

Started POST "/register" for 202.x.x.x at 2014-11-18 02:27:11 +0000
Processing by UsersController#create as HTML
  Parameters: {"utf8"=>"?", "authenticity_token"=>"aBG3nIAKK1ALMJ1DDYFlMkmqISMBMZc3iLmaeD2byG8=", "user"=>{"email"=>"email@gmail.com", "password"=>"[FILTERED]", "password_confirmation"=>"[FILTERED]"}}
Can't verify …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails csrf unicorn devise docker

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

AngularJS:注入名称相同但模块不同的工厂/服务

假设我DSerrorLog在不同的模块下有三个同名的工厂

angular.module('module1').factory('DSerrorLog', function () {
    return { show: false, msg: "" };
});
angular.module('module2').factory('DSerrorLog', function () {
    return { show: false, msg: "" };
});
angular.module('module3').factory('DSerrorLog', function () {
    return { show: false, msg: "" };
});
Run Code Online (Sandbox Code Playgroud)

如何从注入正确的模块如一个正确的情况DSerrorLogmodule3进入我的控制器?我想这样的语法module3.DSerrorLog在这里不起作用.

angular.module('mainApp', ['module1', 'module2', 'module3'])
    app.controller('MainCtrl', function ($scope, DSerrorLog) {
});
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-service

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