小编Tom*_*Tom的帖子

Nginx:在supervisord下运行nginx时如何使用docker日志收集器

官方 nginx docker镜像 ( Dockerfile ) 使用以下技巧将其日志传递到 stdout 和 stderr,以便它们被 docker 日志收集器捕获并使用docker logs <container-name>以下命令查看:

# forward request and error logs to docker log collector
RUN ln -sf /dev/stdout /var/log/nginx/access.log
RUN ln -sf /dev/stderr /var/log/nginx/error.log
Run Code Online (Sandbox Code Playgroud)

我想这样做,但我已经supervisord为PID 1我的容器,它监督nginx的过程,并捕获输出和错误,并把它放在它自己的日志文件。因此日志不会到达 docker 日志收集器。

这是我的 supervisord.conf 中的相关块

[program:nginx]
command=/usr/sbin/nginx -g "daemon off;"
priority=990
; NOTE: We do not want to redirect stdout and stderr of a nginx process to a logfile because we want docker log collector to get them.
stdout_logfile= …
Run Code Online (Sandbox Code Playgroud)

nginx logging supervisord docker

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

gnome-terminal 中 Emacs 中 Ctrl tab 键绑定的问题

我希望能够在 Emacs 中的两个缓冲区之间来回翻转,就像我可以在其他一些编辑器中的选项卡之间翻转一样。以下Ctrl+TAB键绑定在XEmacs 中运行良好:

(defun buffer-shimmy ()
  "Back to the previous buffer"
  (interactive)
  (let ((buff (car (buffer-list))))
    (message "Previous buffer: %s" buff)
    (switch-to-buffer (other-buffer buff))
   )
)
(global-set-key (kbd "<C-tab>") 'buffer-shimmy)
;; or (define-key global-map [(control tab)] 'buffer-shimmy) 
Run Code Online (Sandbox Code Playgroud)

但是,当我使用“emacs -nw ”(或者如果我在 SSH 会话中使用 Emacs)打开 Emacs 时,它不起作用。

找到此链接后- 我想也许我想要的是不可能的?

显然,在终端(即窗口系统之外)为“TAB”的 ASCII 字符添加控制修饰符是无意义的。然而,如果通过窗口系统,Emacs 可以看到您按Ctrl+TAB作为<tab>控制修饰符,它可以在.emacs文件中表示为C-<tab>or<C-tab>[(control tab)]

是否有解决此问题的解决方法?

参考软件:Emacs 版本:22.2.1 在 Ubuntu …

linux ubuntu emacs key-bindings

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

不输入密码重启网络服务器?

可能的重复:
阻止 apache 每次重新启动时要求 SSL 密码

创建 SSL 证书时,我在密钥中使用了密码短语。每当我重新启动我的 Web 服务器(Apache 或 Nginx)时,他们都会要求输入密码:

阿帕奇:

出于安全原因,您的某些私钥文件已加密。为了阅读它们,您必须提供密码短语。

服务器 www.example:443 (RSA)

输入密码:

nginx:

启动 nginx:输入 PEM 密码:

每次输入密码都很烦人,我担心下次重新启动机器时会出现停机时间。

有没有办法在网络服务器重新启动时自动提供 PEM 密码?或者我是否必须使用已删除密码的密钥重新颁发 SSL 证书?

如果我删除密码短语,对安全有什么影响?有什么可担心的吗?

security ssl nginx https apache-2.2

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

使用第 3 方 API 时如何解决 IP 白名单?

我们使用的服务的 API 将拒绝请求,除非源 IP 先前已被列入白名单。他们只给了我们 3 个插槽,这是一个问题,因为我们有超过 3 台机器需要使用 API。

解决此问题的最常用技术是什么?

注意:我不想做任何违反 3rd-party API 的条款和条件的事情。我们正在使用ResellerClub,我联系他们要求更多插槽,但他们回答说:

我请求您将您的服务器路由到几组 IP。

因此这个问题。


想法:

  • 我想我们可以通过运行一种充当中间人的代理来解决这个问题。我们没有向第 3 方发出 API 请求,而是将它们发送到我们的代理,代理将请求反弹给第 3 方,因此所有请求在他们眼中似乎都来自同一个 IP。有做这种事情的通用软件吗?这样做似乎比下面的想法更简单,但我错了吗?
  • 我应该研究使用“NAT 实例”吗?例如http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html。看起来很复杂 - 没有更简单的解决方案吗?(运行具有额外网络复杂性的额外实例是一种耻辱)。
  • 既然我们使用 Docker,那么Weave是否相关?
  • 我们可以将静态 IP 附加到 VPC 网关吗?我看到使用 AWS Storage Gateway(来源)是可能的——但不确定常规的 vpc igw?

我们的架构:我们使用 AWS 并在 ELB 后面运行的 VPC 中放置我们的实例。我们经常在事先不知道 IP 地址的情况下启动新实例。我们在所有机器上运行相同的软件。这些机器运行 CoreOS,我们的应用程序在 Docker 容器中运行。

tunneling nat proxy throttling rate-limiting

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