diff --git a/PORTS b/PORTS index f53f400..f178e34 100644 --- a/PORTS +++ b/PORTS @@ -1,7 +1,8 @@ paas-docker 22220 Phabricator Aphlict (client) 22221 Phabricator Aphlict (admin) 31080 Phabricator HTTP - DevCentral 34080 Etherpad 38080 Jenkins HTTP - CD + 39080 Cachet HTTP 50000 Jenkins master's port for JNLP-based Jenkins agents - CD diff --git a/pillar/paas/docker.sls b/pillar/paas/docker.sls index 12560ad..1b59b7a 100644 --- a/pillar/paas/docker.sls +++ b/pillar/paas/docker.sls @@ -1,110 +1,114 @@ # ------------------------------------------------------------- # Salt — Provision Docker engine # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # Project: Nasqueron # Created: 2018-03-10 # License: Trivial work, not eligible to copyright # ------------------------------------------------------------- # ------------------------------------------------------------- # Images and containers # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # You can append a :tag (by default, latest is used). # You can't directly specify a Docker library images. # See https://docs.saltstack.com/en/latest/ref/states/all/salt.states.docker_image.html docker_images: '*': - certbot/certbot dwellers: # Core services - nasqueron/rabbitmq # Infrastructure and development services - dereckson/cachet - nasqueron/notifications equatower: # Core services - nasqueron/mysql # Infrastructure and development services - nasqueron/aphlict - nasqueron/etherpad - nasqueron/phabricator # Continuous deployment jobs - jenkinsci/jenkins - nasqueron/jenkins-slave-php # phpBB SaaS - nasqueron/mysql docker_containers: equatower: # MySQL mysql: acquisitariat: {} phpbb_db: {} # CD jenkins: host: cd.nasqueron.org app_port: 38080 jenkins_slave: apsile: ip: 172.17.0.100 elapsi: ip: 172.17.0.101 # Infrastructure and development services phabricator: devcentral: {} aphlict: {} + cachet: + app_port: 39080 + host: status.nasqueron.org + mysql_link: acquisitariat etherpad: app_port: 34080 mysql_link: acquisitariat plugins: - ep_ether-o-meter - ep_author_neat # phpBB SaaS # The SaaS uses a MySQL instance, declared in the MySQL section. # Openfire openfire: host: xmpp.nasqueron.org # ------------------------------------------------------------- # Ports listened by XMPP # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - xmpp_ports: - 3478 - 5222 # Client to server - 5223 # Client to server (Encrypted (legacy-mode) connections) - 5262 # Cnnections managers - 5269 # Server to server - 5275 # External components - 5276 # External components (Encrypted (legacy-mode) connections) - 7070 # HTTP binding - 7443 # HTTP binding with TLS - 7777 # File transfer proxy - 9090 # Web administration server - 9091 # Web administration server with THLS # ------------------------------------------------------------- # Zemke-Rhyne clients # # This section should list all the Docker engines server # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - zr_clients: - key: 2 allowedConnectionFrom: - 172.27.26.49 - dwellers.nasqueron.drake - dwellers.nasqueron.org restrictCommand: comment: Zemke-Rhyne - key: 123 allowedConnectionFrom: - equatower.nasqueron.org restrictCommand: comment: Zemke-Rhyne diff --git a/roles/paas-docker/containers/cachet.sls b/roles/paas-docker/containers/cachet.sls new file mode 100644 index 0000000..e94d4cc --- /dev/null +++ b/roles/paas-docker/containers/cachet.sls @@ -0,0 +1,37 @@ +# ------------------------------------------------------------- +# Salt — Provision Docker engine +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +# Project: Nasqueron +# Created: 2016-12-15 +# License: Trivial work, not eligible to copyright +# ------------------------------------------------------------- + +{% set containers = pillar['docker_containers'][grains['id']] %} +{% set container = containers['cachet'] %} + +{% set db_username = salt['cmd.run']('zr getcredentials 47 username') %} +{% set db_password = salt['cmd.run']('zr getcredentials 47') %} + +# ------------------------------------------------------------- +# Container +# +# Image: dereckson/cachet +# Description: PHP application to offer server status +# information +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +cachet: + docker_container.running: + - detach: True + - interactive: True + - image: dereckson/cachet + - links: {{ container['mysql_link'] }}:mysql + - environment: + - DB_HOST: mysql + - DB_DATABASE: cachet + - DB_USERNAME: {{ db_username }} + - DB_PASSWORD: {{ db_password }} + - ports: + - 80 + - port_bindings: + - {{ container['app_port'] }}:80