Pozostaje nam zmodyfikować kilka plików oraz odpalić proces budowania całego ekosystemu. W pliku requrements.yml dodajemy następujące linijki:
# from galaxy
- src: jdauphant.nginx
Od dłuższego czasu używam roli do obsługi nginx tego człowieka :
https://github.com/jdauphant/ansible-role-nginxolejne zmiany czekają nas już w plikach container.yml oraz main.yml. Po pierwsze definiujemy nasze typy kontenerów w chwili obecnej zdefiniujemy sobie 3 typy kontenerów: lbs, whp, dbs. Nasza sekcja
services w pliku container.yml powinna wyglądać mniej więcej tak:
services:
lbs:
image: ubuntu:trusty
ports:
- "8080:80"
Do pliku main.yml doklejamy następujące linie
pre_tasks:
- name: 'update apt cache'
raw: apt-get update -y
- name: 'Fix issue when python is not installed on new server.'
raw: apt-get -y install python-simplejson
- name: "FIX: Ubuntu 16.04 LTS doesn't come with certain modules, required by ansible"
raw: apt-get install python-minimal aptitude -y
- hosts: lbs
roles:
- jdauphant.nginx
Po tych modyfikacjach i wydaniu polecenia
$ ansible-container build
nasze obrazy są przygotowane i gotowe do uruchomienia!
srebrny@jantar /srv/online-game-infrastructure $ docker images
REPOSITORY
online-game-infrastructure-lbs
online-game-infrastructure-dbs
online-game-infrastructure-whp
online-game-infrastructure-web
TAG
latest
latest
latest
latest
IMAGE ID
3af7757fdcc2
17127a5a473b
6841cbd75dd4
fc2afdcb4c52
CREATED
32 minutes ago
32 minutes ago
37 minutes ago
About an hour ago
SIZE
188 MB
266 MB
687 MB
188 MB