当我!pip install geocoder在Jupyter Notebook中运行时,我获得与pip install geocoder在终端中运行相同的输出,但是当我尝试导入时,地理编码器包不可用.
我正在使用Ubuntu 14.04,Anaconda 4.0.0和pip 8.1.2
安装地理编码器:
!pip install geocoder
The directory '/home/ubuntu/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/ubuntu/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the …Run Code Online (Sandbox Code Playgroud) 我正在使用kops在AWS上运行Kubernetes集群.我已经将一个EBS卷安装到一个容器上,它可以从我的应用程序中看到,但它是只读的,因为我的应用程序不是以root身份运行的.如何PersistentVolumeClaim以root用户身份登录?在VolumeMount似乎不具有任何选项来控制所安装的路径的用户,组或文件权限.
这是我的部署yaml文件:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: notebook-1
spec:
replicas: 1
template:
metadata:
labels:
app: notebook-1
spec:
volumes:
- name: notebook-1
persistentVolumeClaim:
claimName: notebook-1
containers:
- name: notebook-1
image: jupyter/base-notebook
ports:
- containerPort: 8888
volumeMounts:
- mountPath: "/home/jovyan/work"
name: notebook-1
Run Code Online (Sandbox Code Playgroud) amazon-web-services docker kubernetes persistent-volume-claims
我想在远程主机上的文件中包含变量,而不是运行Ansible的控制机器.
例如,我有一个文件/var/database_credentials.yml(在我的网络服务器上)
将变量从该文件添加到hostvars的最佳方法是什么,以便我可以在模板中使用它们?
include_vars模块仅从控制计算机获取文件.我可以使用fetch模块,但这似乎是一个不必要的步骤.
我正在尝试使用Ansible从Codeship构建连接到AWS EC2实例.这已经在另一个AWS区域(eu-west-1)中完美地工作了,但是现在我想在us-east-1中设置服务器并且我收到以下错误:
<ec2-52-11-9-45.compute-1.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ec2-user
<ec2-52-11-9-45.compute-1.amazonaws.com> SSH: EXEC ssh -C -vvv -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o User=ec2-user -o ConnectTimeout=10 -o ControlPath=/home/rof/.ansible/cp/ansible-ssh-%h-%p-%r -tt ec2-52-11-9-45.compute-1.amazonaws.com '( umask 22 && mkdir -p "$( echo $HOME/.ansible/tmp/ansible-tmp-1461915330.37-230126286487108 )" && echo "$( echo $HOME/.ansible/tmp/ansible-tmp-1461915330.37-230126286487108 )" )'
fatal: [ec2-52-11-9-45.compute-1.amazonaws.com]: UNREACHABLE! => {"changed": false, "msg": "ERROR! SSH encountered an unknown error. The output was:\nOpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /home/rof/.ssh/config
debug1: Reading …Run Code Online (Sandbox Code Playgroud) 我正在获取EC2实例的列表,然后尝试遍历它们,但是由于某种原因,我无法使该循环正常工作。
output="$(aws ec2 describe-instances --filters 'Name=tag:Environment,Values=development' --query '[Reservations[*].Instances[*].PublicDnsName]' --output text)"
echo $output 显示如下:
ec2-55-55-555-555.eu-west-1.compute.amazonaws.com
ec2-66-66-666-666.eu-west-1.compute.amazonaws.com
Run Code Online (Sandbox Code Playgroud)
然后我创建一个像这样的数组:
instances=(${output//'\n'/ })
Run Code Online (Sandbox Code Playgroud)
echo ${instances[0]}并echo ${instances[1]}给出正确的输出。
然后尝试遍历数组:
for i in $instances; do echo instance: "$i"; done
但是我得到:
实例:ec2-55-55-555-555.eu-west-1.compute.amazonaws.com ec2-66-66-66-666-666.eu-west-1.compute.amazonaws.com
代替:
instance: ec2-55-55-555-555.eu-west-1.compute.amazonaws.com
instance: ec2-66-66-666-666.eu-west-1.compute.amazonaws.com
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?是否有更好的方法遍历结果,也许使用json输出格式?
我有一些额外的信息,比如存储在/etc/ansible/facts.d/environment.fact中的数据库连接细节等.
这些可用作变量ansible_local.environment.database.name.更新数据库名称的最佳方法是什么?
我尝试了set_fact模块但无法正确更新嵌套变量.它只是覆盖整个ansible_local哈希.
- name: Update database name
set_fact:
args:
ansible_local:
environment:
database:
name: "{{ db_name }}"
Run Code Online (Sandbox Code Playgroud) 我试图找出之间的区别:
validates :foo, presence: false
validates :foo, allow_blank: true
Run Code Online (Sandbox Code Playgroud)
当我使用状态:错误验证失败,但是当我使用allow_blank:true时,验证不会失败。根据文档http://apidock.com/rails/ActiveRecord/Validations/ClassMethods/validates_presence_of使用空白?方法。有人可以解释一下区别吗?
我正在使用Amazon Linux AMI,我卸载PHP 5.6和一些扩展,然后安装PHP 7.0和一些扩展.这一切都运行好几周,然后突然PHP 5.6和我之前的扩展再次安装,没有我做任何事情(据我所知)导致这一点.这似乎是在我的一些服务器上随机发生的,而不是其他服务器.
这是我的YUM日志:
Apr 03 14:58:53 Erased: php56-5.6.30-1.133.amzn1.x86_64
Apr 03 14:58:53 Erased: php56-mysqlnd-5.6.30-1.133.amzn1.x86_64
Apr 03 14:58:53 Erased: php56-pdo-5.6.30-1.133.amzn1.x86_64
Apr 03 14:58:53 Erased: php56-xml-5.6.30-1.133.amzn1.x86_64
Apr 03 14:58:53 Erased: php56-cli-5.6.30-1.133.amzn1.x86_64
Apr 03 14:58:53 Erased: php56-jsonc-1.3.6-1.19.amzn1.x86_64
Apr 03 14:58:53 Erased: php56-common-5.6.30-1.133.amzn1.x86_64
Apr 03 14:58:53 Erased: php56-process-5.6.30-1.133.amzn1.x86_64
Apr 03 14:59:12 Installed: php70-json-7.0.16-1.21.amzn1.x86_64
Apr 03 14:59:12 Installed: php70-process-7.0.16-1.21.amzn1.x86_64
Apr 03 14:59:12 Installed: php70-cli-7.0.16-1.21.amzn1.x86_64
Apr 03 14:59:12 Installed: php70-xml-7.0.16-1.21.amzn1.x86_64
Apr 03 14:59:12 Installed: php70-common-7.0.16-1.21.amzn1.x86_64
Apr 03 14:59:13 Installed: php70-pdo-7.0.16-1.21.amzn1.x86_64
Apr 03 14:59:13 …Run Code Online (Sandbox Code Playgroud) 我想在Helm模板中生成一个密码,使用此randAlphaNum功能很容易做到。但是,升级发行版后,密码将更改。有没有一种方法可以检查以前是否生成过密码,然后使用现有值?像这样:
apiVersion: v1
kind: Secret
metadata:
name: db-details
data:
{{ if .Secrets.db-details.db-password }}
db-password: {{ .Secrets.db-details.db-password | b64enc }}
{{ else }}
db-password: {{ randAlphaNum 20 | b64enc }}
{{ end }}
Run Code Online (Sandbox Code Playgroud) 我最近更新了rails和其他一些宝石.但是现在我收到以下错误:
/ Mixin"exports"中的Sass :: SyntaxError不接受内容块.(在/Users/mikhailja/Sites/marketing/app/assets/stylesheets/application.css.scss:341)
我正在使用:
在尝试了许多宝石版本之后,这个问题消失了一段时间,但现在突然之后它的堆栈级别太深了.
我在一个新的应用程序中尝试了相同版本的基础,它完美地运行.
任何有助于解决这个问题的人都会非常感激.