【发布时间】:2018-10-30 15:41:55
【问题描述】:
从 Docker Hub 获取 python:
$ docker pull python
在 CoreOS 上。
想使用 Ansible 从其他主机连接它,所以需要在 CoreOS 上启动 Python。
但是这样怎么办呢?
更多详情
这种方式可以用coreos运行ansible:
第 1 步:在 CoreOS 上使用 shell 脚本安装 python
(据说不好,现在可以用了)
How do I run python on my Vagrant vm instance that is CoreOS?
第 2 步:在 ansible-playbook 中配置主机
[coreos]
core-01
[coreos:vars]
ansible_ssh_user=core
ansible_python_interpreter=/home/core/bin/python
第 3 步:测试连接
$ ansible -m ping -u core -i hosts core-01
core-01 | SUCCESS => {
"changed": false,
"ping": "pong"
}
可以使用。但是关于Step 1,有没有办法使用python容器来启动它而不是使用shell脚本来安装?
【问题讨论】:
-
我对您的问题感到困惑,只是如何运行 docker 容器?
-
Ansible 用于安装基础设施所需的所有包,即 Java 8 或 python 3.6 等。您不能使用 docker pull。Docker pull 用于从 Docker Hub 或 Docker repo 中提取图像。Ansible肯定会参与安装python。
-
@chrisz 如何将python作为容器运行,其他主机可以知道它的python进程。
-
@Ankur 我在问题中添加了一些细节。
-
在 vagrant 中你可以设置虚拟环境,比如 set virtualenv 。然后你可以在里面安装 python,这就是我们在 2-3 年前使用 vagrant 设置 python Django 项目时所做的。
标签: python docker process ansible coreos