Skip to content

Commit

Permalink
🐛🚧 fix docker and docker-compose installation
Browse files Browse the repository at this point in the history
  • Loading branch information
alexsavio committed Jul 30, 2018
1 parent 7be1bb2 commit 4812564
Show file tree
Hide file tree
Showing 4 changed files with 109 additions and 64 deletions.
12 changes: 12 additions & 0 deletions roles/common/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,15 @@
become: yes
become_method: sudo
tags: always

- name: Install dependencies
apt:
name: '{{ item }}'
update_cache: yes
cache_valid_time: 3600
with_items:
- build-essential
- libssl-dev
- python-dev
- python3
- python3-pip

This comment has been minimized.

Copy link
@hardion

hardion Jul 30, 2018

The pip install through apt should remove the need to the pip installation in the python role.

- name: Download get-pip.py
  get_url:
    url: https://bootstrap.pypa.io/get-pip.py
    dest: "{{ tmp_install_dir }}/get-pip.py"
    mode: 0550

- name: Install pip
  command: python {{ tmp_install_dir }}/get-pip.py

- name: Delete get-pip.py
  file:
    path: "{{ tmp_install_dir }}/get-pip.py"
    state: absent

- name: Update pip and setuptools
  pip:
    name: '{{ item }}'
    state: forcereinstall
  with_items:
    - pip
    - setuptools
58 changes: 58 additions & 0 deletions roles/docker-compose/tasks/install_docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---

- name: Install docker dependencies
apt:
name: '{{ item }}'
update_cache: yes
cache_valid_time: 3600
with_items:
- apt-transport-https
- ca-certificates
- curl
- software-properties-common

- name: Fetch Docker’s official GPG key
get_url:
url: https://download.docker.com/linux/ubuntu/gpg
dest: docker_apt.key
validate_certs: false

- name: Add Docker’s official GPG key
apt_key:
file: docker_apt.key
state: present

- name: Add Docker's official APT repository
command: add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

- name:
apt:
name: '{{ item }}'
update_cache: yes
with_items:
- docker-ce

- name: Add docker group
group:
name: docker
state: present

- name: Add user to docker group
user:
name: "{{ user }}"
groups: docker
append: yes

- name: Change a few ownerships to root:docker
file:
path: '{{ item }}'
owner: root
group: docker
with_items:
- /var/run/docker.sock
- /usr/bin/docker

- name: Restart the docker daemon
service:
name: docker
state: restarted
30 changes: 30 additions & 0 deletions roles/docker-compose/tasks/install_docker_compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---

- name: Install dependencies
apt:
name: '{{ item }}'
update_cache: yes
cache_valid_time: 3600
with_items:
- build-essential
- libssl-dev
- python-dev
- python3
- python3-pip

- name: Install docker-compose
pip:
name: '{{ item }}'
state: forcereinstall
with_items:
- cryptography=={{ pip_cryptography_version }}
- docker-compose=={{ pip_docker_compose_version }}
executable: pip3

- name: docker-compose.yml template file
copy:
src: docker-compose.yml
dest: "{{ docker_compose_filepath }}"
owner: "{{ user }}"
group: "docker"
mode: 0640
73 changes: 9 additions & 64 deletions roles/docker-compose/tasks/main.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
---

# - name: docker-compose | Install dependencies
# apt:
# name: '{{ item }}'
# update_cache: yes
# cache_valid_time: 3600
# with_items:
# - build-essential
# - libssl-dev
# - python-dev
- include_tasks: install_docker.yml
tags: [docker, docker_compose]

- name: docker-compose | Create folders for docker-compose
- include_tasks: install_docker_compose.yml
tags: [docker, docker_compose]

- include_tasks: folders.yml
tags: [docker, docker_compose]

- name: Create folders for docker-compose
file:
path: '{{ item }}'
state: directory
Expand All @@ -21,57 +20,3 @@
- '{{ dockers_volumes_dir }}'
- '{{ dockers_config_dir }}'
- '{{ dockers_env_dir }}'

# - name: docker-compose | Install docker
# shell: curl -sSL https://get.docker.com | sh

- name: docker-compose | Install docker
apt:
name: '{{ item }}'
update_cache: yes
cache_valid_time: 3600
with_items:
- docker.io

- name: docker-compose | Install docker-compose
pip:
name: '{{ item }}'
state: forcereinstall
with_items:
#- docker=={{ pip_docker_version }}
# - docker-py
- cryptography=={{ pip_cryptography_version }}
- docker-compose=={{ pip_docker_compose_version }}

- name: docker-compose | docker-compose.yml template file
copy:
src: docker-compose.yml
dest: "{{ docker_compose_filepath }}"
owner: "{{ user }}"
group: "docker"
mode: 0640

- name: docker-compose | Add docker group
group:
name: docker
state: present

- name: docker-compose | Add user to docker group
user:
name: "{{ user }}"
groups: docker
append: yes

- name: docker-compose | Change a few ownerships to root:docker
file:
path: '{{ item }}'
owner: root
group: docker
with_items:
- /var/run/docker.sock
- /usr/bin/docker

- name: docker-compose | Restart the docker daemon
service:
name: docker
state: restarted

0 comments on commit 4812564

Please sign in to comment.