小编hol*_*lms的帖子

如何用ansible设置FQDN?

看来推荐的方法对我来说效果不好:

- name: Set hostname
  hostname: name=mx.mydomain.net
Run Code Online (Sandbox Code Playgroud)

重新启动后,你可以看到我有fqdn的问题,没有任何内容/etc/hosts.

root@mx:~# cat /etc/hosts
127.0.0.1   localhost
127.0.1.1   mail mail

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

root@mx:~# cat /etc/hostname
mx.mydomain.net

root@mx:~# hostname
mx.mydomain.net

root@mx:~# hostname -f
hostname: Name or service not known
Run Code Online (Sandbox Code Playgroud)

ubuntu ansible

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

如何从 CLI 输入 gnupg-agent 密钥密码?

我确实用 git 签署了提交,这是一个大问题,我无法从 CLI 以外的任何地方输入 gpg 密钥密码。例如,如果我将在 vscode 中提交,它将失败。所以我想出了一个想法,只需从 CLI 输入密码,并将其缓存一段时间。

我在这里使用鱼壳,所以这里有一个配置:

set -x GPG_TTY (tty)
eval (gpg-agent --daemon --allow-preset-passphrase  --default-cache-ttl 43200)
Run Code Online (Sandbox Code Playgroud)

据我了解,我需要启用为代理预设密码。那么接下来呢?

我试图预设一个这样的键,但它失败了:

$ echo mypassphrase | /usr/lib/gnupg2/gpg-preset-passphrase -c E2AB66331DA5CA780B7B1FA5D4BF11DA1E39EDFF

gpg-preset-passphrase: caching passphrase failed: Not supported
Run Code Online (Sandbox Code Playgroud)

我已经用谷歌搜索了所有我能做的,但没有人在任何地方回答这个问题。有类似的东西会很好ssh-add,你只需添加一个私钥,然后输入密码,想知道为什么 gpg-agent 没有采用这种漂亮的设计。

gnupg

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

是否有任何python库在美丽的ascii表中输出字典?

我在这里有一个非常庞大的字典,它只是重复了一遍,我正在搜索任何代码来在一些ascii表中显示该字典,这将被输出到命令行.至少要为非维度字典生成一些生成的列,其余的可以作为键:单元格中的值,如下所示:

dictionary = {"column1":{"key":"val"},"column2":"value"}

=====================
| column1 | column2 |
=====================
| key:val | value   |
Run Code Online (Sandbox Code Playgroud)

u"" {} ,当我快速需要这些信息时,看到输出中的所有那些真是令人不安的情况仍然更好.

python ascii

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

如何修复tmux中的滚动错误?

我知道这听起来很可怕,但它可能与cygwin无关.如你所知,cygwin使用xterm,然后我转向另一台机器,我已经启动了tmux.在一台机器上我已经为tmux启用了鼠标,滚动时它几乎可以正常工作.在用鼠标滚动屏幕时,我在命令行中出现了一些随机字符,但至少滚动工作,但我有机器,我不能拥有自己的配置,所以滚动键盘实际上是错误的.使用此快捷方式进入滚动模式后ctrl+b [,我只能滚动显示可见区域,然后所有随机字符都出现在命令行中,而且它根本不允许我向上滚动.启用鼠标的最有趣的事情是,使用键盘滚动很好,我仍然会出现这种随机字符,但只要滚动工作就可以了.

所以我的问题是如何摆脱用鼠标/键盘滚动时出现的随机字符?

我的tmux.config,其中启用了鼠标:

set-option -g mode-mouse on
set-option -g mouse-select-pane on
set-option -g mouse-select-window on
Run Code Online (Sandbox Code Playgroud)

linux cygwin tmux

6
推荐指数
0
解决办法
2993
查看次数

我应该使用什么UML图来实现简单的应用程序功能..?

我真的对此感到困惑,试图阅读很多关于图表但我无法理解什么是最适合这种情况.

我只需要看看我有10个模块,它有10个功能.其中一个功能可以调用其他模块功能..

这样的事情.非常简单.最好只是成为某种具有依赖性[作为特征]的块以及每个模块块如何与另一个块交互

目的是显示开源系统没有的内容,以及修改后该系统将具有的内容.而且,对于颜色,它很容易显示所有修改...比开始规划项目更容易,并计算你需要花费多少小时来做你需要做的事情..

project-planning uml

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

如何在mongoengine中获取ReferenceField数据?

我有一个问题,查询集oid在json中检索,我想检索我在下面的User集合的实际用户名:

class User(db.Document):
    username      = db.StringField(required=True)
    password_hash = db.StringField()
    is_admin      = db.IntField(default=0)

class Message(db.EmbeddedDocument):
    to_users     = db.ListField(db.ReferenceField(User))
    created_at   = db.DateTimeField(default=datetime.now)
    is_read      = db.BooleanField(default=False)
    body         = db.StringField(required=True)

class Inbox(db.Document):
    from_user    = db.ReferenceField(User, required=True)
    subject      = db.StringField(max_length=255, required=True)
    created_at   = db.DateTimeField(default=datetime.now)
    messages     = db.ListField(db.EmbeddedDocumentField(Message))

username = User().get_username()
username = User.objects(username=username).first()

inbox = Inbox.objects.filter(messages__to_users__in=[username]).only('from_user', 'subject', 'created_at').to_json()
Run Code Online (Sandbox Code Playgroud)

这就是我得到的结果:

[{"created_at": {"$date": 1401593024844}, "from_user": {"$oid": "538ad45fb43fdd69076d3e64"}, "subject": "test"}]
Run Code Online (Sandbox Code Playgroud)

有这样的事情会很高兴:

[{"created_at": {"$date": 1401593024844}, "from_user": {"username": "holms"}, "subject": "test"}]
Run Code Online (Sandbox Code Playgroud)

或者某种类似的相似 "from_user" : {"User": {"username":"holms"}}

UPDATE

上面的答案适用于Document中的ReferenceField,但是EmbeddedDocument引用呢?假设我只将"消息"添加到()? …

python mongodb mongoengine

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

使用盐配置器的Vagrant不显示任何输出

在创建vm时,除非你处于详细模式,你的屏幕上有闪烁的音调,否则我不会完全得到盐的任何响应,它并不代表好的信息salt-call.

这是你得到的 vagrant up web

192:vagrant-starter holms$ vagrant up web
Bringing machine 'web' up with 'virtualbox' provider...
==> web: Importing base box 'debian80'...
==> web: Matching MAC address for NAT networking...
==> web: Setting the name of the VM: vagrant-starter_web_1410407135596_15907
==> web: Clearing any previously set forwarded ports...
==> web: Clearing any previously set network interfaces...
==> web: Preparing network interfaces based on configuration...
    web: Adapter 1: nat
==> web: Forwarding ports...
    web: 80 => 9999 (adapter 1) …
Run Code Online (Sandbox Code Playgroud)

ubuntu vagrant salt-stack

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

gunicorn未能发射蟒蛇前夕

这是settings.py

root@00d72ee95c2d:/var/www/eve-auth# cat settings.py
DOMAIN = {'people': {}}
Run Code Online (Sandbox Code Playgroud)

这是run.py

from eve import Eve
app = Eve()

if __name__ == '__main__':
    app.run()
Run Code Online (Sandbox Code Playgroud)

当我独立运行时,它可以工作:

root@00d72ee95c2d:/var/www/eve-auth# python run.py
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
Run Code Online (Sandbox Code Playgroud)

但是当我通过gunicorn启动它时无法运行:

root@00d72ee95c2d:/var/www/eve-auth# gunicorn -b 0.0.0.0:5000 run:app
[2016-02-12 02:07:22 +0000] [20] [INFO] Starting gunicorn 19.4.5
[2016-02-12 02:07:22 +0000] [20] [INFO] Listening at: http://0.0.0.0:5000 (20)
[2016-02-12 02:07:22 +0000] [20] [INFO] Using worker: sync
[2016-02-12 02:07:22 +0000] [23] [INFO] Booting worker with pid: 23
[2016-02-12 02:07:22 +0000] [23] [ERROR] Exception …
Run Code Online (Sandbox Code Playgroud)

python gunicorn docker eve

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

使用 yaml 文件配置运行 Kubectl

这里有一个类似的问题,但我想我想要不同的东西。对于那些熟悉 docker-compose 的人来说,有一个出色的命令可以在容器中运行命令一次,这对于在每次部署之前启动迁移非常有帮助:

docker-compose -f docker-compose.prod.yml run web npm run migrate
Run Code Online (Sandbox Code Playgroud)

另外,因为这是一个单行命令,所以它很适合自动化目的:就像使用 Makefile 或 ansible/chef/saltstack 一样。

我唯一发现的是kubectl run哪个更类似于docker run. 但docker-compose run允许我们使用配置文件,而 docker-run 则不允许:

 kubectl run rp2migrate --command -- npm run migrate
Run Code Online (Sandbox Code Playgroud)

这可能会起作用,但我需要列出 20 个环境变量,并且真的不想在命令行中执行此操作。相反,我想传递一个标志来指定 yaml 配置,如下所示:

 kubectl run rp2migrate  -f k8s/rp2/rp2-deployment.yaml --command -- npm run migrate
Run Code Online (Sandbox Code Playgroud)

docker kubernetes

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

如何在visual studio代码中忽略整个git存储库?

这不是关于使用.gitignore来忽略某些文件,它是关于从VScode的文件监视器中完全排除该特定存储库.

它抱怨说有超过5000个文件被打开然后只是挂了我的笔记本电脑.这个存储库有大量的文件,并且它位于我的主文件夹中,因为我的配置存储在git中,在.gitignore中我添加了所有要忽略的文件,当我需要存储我正在使用的文件时git add -f <file>.

正如您在图片库中看到的那样,holms总是被打开,这会导致我的问题,这是父回购,它位于我的主文件夹中.我怎么能完全忽略它?如果我关闭那个回购,它会在编辑器中工作3分钟之后再次出现

在此输入图像描述

git visual-studio-code

5
推荐指数
3
解决办法
1175
查看次数