在alpine镜像中添加ansible服务的方法

 更新时间:2018年12月29日 14:45:47   作者:liumiaocn  
今天小编就为大家分享一篇关于在alpine镜像中添加ansible服务的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

使用apk add ansible即可在alpine镜像中添加ansible服务。

添加步骤

在alpine中使用ansible需要如下几步

Dockerfile

在Dockerfile中添加上面的语句:

#update apk for install
RUN apk update
#install ansible and openssh
RUN apk add ansible openssh
#init ansible hosts file
RUN mkdir -p /etc/ansible
RUN echo "localhost" >/etc/ansible/hosts
#init rsa ssh key pair
RUN ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
#delete cache files 
RUN rm -rf /var/cache/apk/*

使用镜像

拉取镜像

大概103M左右

[root@occluster ~]# docker pull liumiaocn/ansible
Using default tag: latest
Trying to pull repository docker.io/liumiaocn/ansible ... 
latest: Pulling from docker.io/liumiaocn/ansible
ff3a5c916c92: Already exists 
42a81541f983: Pull complete 
86602ac17bcb: Pull complete 
73cb14e49a3f: Pull complete 
bdfcad59d746: Pull complete 
455ffeaa5bf1: Pull complete 
dff32643cfa5: Pull complete 
Digest: sha256:46284f3d3b9e3880f9b65fa6b1fb225b19bc88222badf74aa85936aabc24090f
Status: Downloaded newer image for docker.io/liumiaocn/ansible:latest
[root@occluster ~]# 
[root@occluster ~]# docker images |grep ansible
docker.io/liumiaocn/ansible         latest       8a5cfdf8243f    Less than a second ago  103 MB
[root@occluster ~]#

使用

进行版本确认

[root@occluster ~]# docker run -it --name ansible liumiaocn/ansible sh
/ # ansible --version
ansible 2.4.1.0
 config file = None
 configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
 ansible python module location = /usr/lib/python2.7/site-packages/ansible
 executable location = /usr/bin/ansible
 python version = 2.7.14 (default, Dec 14 2017, 15:51:29) [GCC 6.4.0]
/ #

与宿主机(192.168.163.172)进行沟通,事先设定ssh通路,可以使用ssh-copy-id

/ # ssh-copy-id 192.168.163.172
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '192.168.163.172 (192.168.163.172)' can't be established.
ECDSA key fingerprint is SHA256:uh84Xw56LhiCXb1b0uFbX/CoFhkqHGZjtmLwl3qkTOY.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
expr: warning: '^ERROR: ': using '^' as the first character
of a basic regular expression is not portable; it is ignored
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.163.172's password: 
Number of key(s) added: 1
Now try logging into the machine, with:  "ssh '192.168.163.172'"
and check to make sure that only the key(s) you wanted were added.
/ #

ssh通路确认

/ # ssh 192.168.163.172 hostname
occluster
/ #

ansible动作确认

/ # echo "192.168.163.172" >>/etc/ansible/hosts
/ # ansible 192.168.163.172 -m ping
192.168.163.172 | SUCCESS => {
  "changed": false, 
  "failed": false, 
  "ping": "pong"
}
/ #

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • 解析docker妙用SpringBoot构建微服务实战记录

    解析docker妙用SpringBoot构建微服务实战记录

    Spring Boot 是 Spring 开源组织的子项目,是 Spring 组件一站式解决方案,本文通过详细案例给大家解析docker妙用SpringBoot构建微服务实战记录,感兴趣的朋友跟随小编一起看看吧
    2021-11-11
  • Docker多容器连接(以Tomcat+Mysql为例)

    Docker多容器连接(以Tomcat+Mysql为例)

    这篇文章主要介绍了Docker多容器连接(以Tomcat+Mysql为例),Docker提供了多个容器直接访问的方法,可以使多个容器直接通过网络端口进行访问
    2017-03-03
  • iptables如何限制宿主机跟Docker IP和端口访问(安全整改)

    iptables如何限制宿主机跟Docker IP和端口访问(安全整改)

    本文详细介绍了如何通过iptables对网络访问进行限制,包括限制特定IP或网段访问特定服务,以及在Docker环境下,如何设置DOCKER-USER链限制IP和端口访问,确保网络安全
    2024-10-10
  • 如何在 Docker 中运行 Mongodb

    如何在 Docker 中运行 Mongodb

    本文详细介绍了如何在Docker中安装并运行MongoDB,包括安装Docker,下载Mongo镜像,创建容器,连接数据库和数据持久化的方法,通过具体的命令和步骤,使用户能够顺利在Docker中部署MongoDB服务
    2024-01-01
  • Docker iptables的错误解决

    Docker iptables的错误解决

    本文主要介绍了Docker iptables的错误解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-05-05
  • docker垃圾清理方式

    docker垃圾清理方式

    文章主要介绍了如何删除Docker镜像和容器、清理Docker磁盘空间以及配置Docker日志大小,通过这些方法可以有效地管理Docker资源,避免磁盘空间不足的问题
    2025-03-03
  • 在Mac OS X安装Docker教程

    在Mac OS X安装Docker教程

    本篇文章主要介绍了在OS X安装Docker教程,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • 详解Docker容器数据卷

    详解Docker容器数据卷

    这篇文章主要介绍了Docker容器数据卷的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • Docker中的容器网络和通信原理详解

    Docker中的容器网络和通信原理详解

    这篇文章主要介绍了Docker中的容器网络和通信原理,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • 本地Docker安装Postgres 12 + pgadmin的方法 (支持Apple M1)

    本地Docker安装Postgres 12 + pgadmin的方法 (支持Apple M1)

    这篇文章主要介绍了本地Docker安装Postgres 12 + pgadmin的方法 (支持Apple M1),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03

最新评论