Tag: 可靠

部署包含docker-compose.yml的Ansible项目

我想用Ansible来部署我的一个项目(我们称之为project-to-deploy )。 project-to-deploy可以使用docker-compose.yml文件在本地运行,其中包括在docker-compose.yml安装以下卷。 version: "2" services: database: image: mysql:5.6 volumes: – ./docker/mysql.init.d:/docker-entrypoint-initdb.d messages: image: private.repo/project-to-deploy:latest 这里没什么用处。 运行该项目: docker-compose up 。 我创build了项目的docker image (将项目中的所有文件复制到新创build的docker image ),并将其上传到private.repo/project-to-deploy:latest 。 现在是Ansible的一部分。 为了运行这个项目,我需要: docker的形象 一个MySQL实例(参见下面我docker-compose.yml一部分) 在我docker-compose.yml (上面)中,这样做很容易。 我只是创build2个服务(数据库和project-to-deploy ),并相互链​​接。 我如何在Ansible执行这样的操作? 我做的第一件事是获取图像: – name: Docker – pull project image docker: image: "private.repo/project-to-deploy:latest" state: restarted pull: always 那么,如何知道 MySQL docker镜像需要project-to-deploy呢? 如果你想另一种方式去做,请随时提出build议!

模拟“dockerbuild设-f”与模块“docker_image”

在构builddocker镜像时,我想在Dockerfile中添加指令“COPY”,并在当前编译目录之外的目录中(放置Dockerfile的位置) – 我使用的是这样的: docker build -f centos6-fresh / Dockerfile -t test / c6-fresh。 现在我想通过可靠的方式来configuration容器并build立docker图像。 当然,我可以用shell,command或raw模块来完成,但是我看到了Docker的特殊模块。 所以我用模块“docker_image” – name: Build test image docker_image: path: /docker/build_env/test name: test_build tag: v0 当然,我有错误。 有没有什么select,从哪个目录设置,build立过程必须开始? UPD我需要这些操作的例子: 我有pipe理节点(我的笔记本电脑)与容器的可靠和Docker主机。 Ansible dir使用git供应给Docker服务器。 通常我在Docker主机上的目录build_env中创build一个镜像: [root@docker build_env]# ls -1 ansible centos6-fresh centos7-fresh debian8-fresh templates test 所以在运行“git pull”之后,我运行了类似的东西 docker build -f centos6-fresh / Dockerfile -t test […]

可靠的dockerpostgres卷

我正在做一些postgres部署docker,aws和a terraform 事情进展得相当顺利,我开始terraform的实例,与docker使用ansible提供的实例,启动我的postgres容器与ansible也附加一个ebs卷到我的实例,我打算用作主要的数据存储。 但我很困惑如何将音量附加到docker(而不是实例,因为我能够做到这一点使用terraform) 我想可能使用ansible或修改dockerfile,但似乎是答案的“ 音量 ”的文档是不是很清楚。 所以如果我有这样一个可靠的剧本: name: Start postgis docker_container: name: postgis image: "{{ ecr_url }}" network_mode: bridge exposed_ports: 5432 published_ports: 5432:5432 state: started 我将如何指定用于Postgres数据存储的ebs卷? resource "aws_volume_attachment" "ebs-volume-postgis-attach" { device_name = "/dev/xvdh" volume_id = "${aws_ebs_volume.ebs-volume-postgis.id}" instance_id = "${aws_instance.postgis.id}" } 这是用来附加ebs卷的代码,以防某人感兴趣 请问任何你需要的信息,所有的帮助是深深的折磨

如何使用docker_image模块标记本地docker镜像?

我正在构build一个本地docker镜像,我想标记它,但我不知道如何为我刚刚在本地创build的Docker镜像填充repository字段。 用docker_image模块甚至可以标记本地图像?

无法连接到通过正确启动的MySQL Docker容器

我得到一个“访问被拒绝”的错误,试图连接到MySQL Docker容器,我通过我的脚本开始。 如果我使用Docker CLI工具创build容器,则一切正常。 我想知道这是否与环境variables有关。 这工作 $ docker run –name database -e MYSQL_ROOT_PASSWORD=hunter2 -d mysql:5.7 $ mysql -h $CONTAINER_IP_ADDRESS -u root -phunter2 $ mysql> 这已破了 playbook.yml – name: Start new MySQL container docker: name: database image: mysql:5.7 state: running env: MYSQL_ROOT_PASSWORD=hunter2 然后连接失败: $ mysql -h $CONTAINER_IP_ADDRESS -u root -phunter2 ERROR 1045 (28000): Access denied for […]

有什么办法可以自动configurationNexus 3吗?

我目前正在build立一个nexus3 OSS服务器。 我已经创build了一个可靠的angular色,将设置一个官方的nexus3docker集装箱behing和nginx反向代理。 我有我的存储设置分开,所以我的工件将坚持如果实例被杀害(例如,基本图像更新)。 我想build立一个合理的angular色,所以我不必每次重新创build服务器时都要进入到连接设置LDAP和存储库。 有没有办法将这种configuration注入nexus?

从Ansible运行预设IP的Docker容器

我试图在Ansible中部署3个容器,其中一个容器包含一个MySQL,我想确保其IP是静态的,并且为其他2所知。 我试过这个任务: – name: launch mysql container docker: name: my-mysql-container image: my-mysql-image ip: 172.17.0.4 volumes: – "databases:/var/lib/mysql" 但是参数ip不被支持, 文档没有提供线索。 我知道我可以使用shell参数来运行带有bash命令的容器。 但是有没有select使用Ansible Docker模块预设IP?

使用ansible-playbook安装docker-compose时出错

我有一个非常简单的Ansible操作手册,为docker-compose和docker安装了所有依赖项,但是在安装docker-compose时出现错误,这是我的操作手册中将Docker-compose安装在CentOS7环境中的任务。 #ensure docker-compose and chmod +x /usr/local/bin/docker-compose – name: Ensure docker-compose is installed and available command: curl -L https://github.com/docker/compose/releases/download/1.7.0-rc1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose – name: Ensure permissions docker-compose command: chmod +x /usr/local/bin/docker-compose 出现以下错误: TASK: [Ensure docker-compose is installed and available] ********************** failed: [nutrilife-aws] => {"changed": true, "cmd": ["curl", "-L", "https://github.com/docker/compose/releases/download/1.7.0-rc1/docker-compose-`uname", "-s`-`uname", "-m`", ">", "/usr/local/bin/docker-compose"], "delta": […]

Ansible docker_container'否请求URL中的主机',docker pull正常工作

我正在尝试使用Ansible操作手册在AWS上configuration我的基础架构。 我有这个实例,并且能够configurationdocker-engine,docker-py等,我发誓,昨天这个工作正常,而且我从来没有改变过代码。 我的剧本的相关部分是: – name: Ensure AWS CLI is available pip: name: awscli state: present when: aws_deploy – block: – name: Add .boto file with AWS credentials. copy: content: "{{ boto_file }}" dest: ~/.boto when: aws_deploy – name: Log in to docker registry. shell: "$(aws ecr get-login –region us-east-1)" when: aws_deploy – name: Remove .boto […]

如何在默认情况下在Docker容器中启动php-fpm?

我有这个Docker镜像 – FROM centos:7 MAINTAINER Me <me.me> RUN yum update -y RUN yum install -y git https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm RUN yum install -y ansible RUN git clone https://github.com/…/dockerAnsible.git RUN ansible-playbook dockerFileBootstrap.yml RUN (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \ rm -f /lib/systemd/system/multi-user.target.wants/*;\ rm -f /etc/systemd/system/*.wants/*;\ rm […]