Reputation: 5648
I have some problems with Travis CI because of https://github.com/docker/docker/issues/6980.
I found solution - add this in /etc/default/docker:
DOCKER_OPTS="--storage-driver=devicemapper"
So I tried to modify Docker setting to use another storage driver in .travis.yml:
before_install:
- sudo ps -A|grep docker
- sudo service docker stop
- sudo ps -A
- sudo echo 'DOCKER_OPTS="-H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock -s devicemapper"' | sudo tee /etc/default/docker > /dev/null
#- sudo echo 'DOCKER_OPTS="-s devicemapper"' | sudo tee /etc/default/docker > /dev/null
- sudo cat /etc/default/docker
- sudo service docker start
- sudo ps -A|grep docker
#- sudo service docker restart
- sudo docker pull centos:7
But it failed. When I use:
- sudo echo 'DOCKER_OPTS="-H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock -s devicemapper"' | sudo tee /etc/default/docker > /dev/null
I got an error https://travis-ci.org/weldpua2008/ansible-apache/jobs/82684013:
Post http:///var/run/docker.sock/v1.19/images/create?fromImage=weldpua2008%2Fdocker-ansible%3Acentos6_v1.9.2: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS?
and when I tried:
- sudo echo 'DOCKER_OPTS="-s devicemapper"' | sudo tee /etc/default/docker > /dev/null
I got https://travis-ci.org/weldpua2008/ansible-apache/jobs/82685316 an error:
Cannot connect to the Docker daemon. Is 'docker -d' running on this host?
Upvotes: 0
Views: 260
Reputation: 5648
Because of Travis CI Docker bug there is way to use new version of Docker. Thank to Dominic Jodoin from Travis CI team. .travis.yml:
sudo: required
env:
#matrix:
- OS_TYPE=centos OS_VERSION=6 ANSIBLE_VERSION=1.9.2
branches:
only:
- master
# - stable
services:
- docker
before_install:
- sudo apt-get update
- sudo apt-get upgrade lxc-docker
- echo 'DOCKER_OPTS="-H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock -s devicemapper"' | sudo tee /etc/default/docker > /dev/null
- sudo service docker restart
- sleep 5
- sudo docker pull weldpua2008/docker-ansible:${OS_TYPE}${OS_VERSION}_v${ANSIBLE_VERSION}
script:
# Run tests in Container
- sudo docker run --rm=true -v `pwd`:/ansible-apache:rw weldpua2008/docker-ansible:${OS_TYPE}${OS_VERSION}_v${ANSIBLE_VERSION} /bin/bash -c "/ansible-apache/tests/test-in-docker-image.sh ${OS_TYPE} ${OS_VERSION} ${ANSIBLE_VERSION}"
notifications:
email: false
Upvotes: 1