MCF Base System
This repository contains a base development environment with central services for the MyCareersFuture project.
Go through this before starting all other projects. See respective projects for the commands to start them.
Requirements
Make
Run which make && make --v
to verify your version of Make.
$ which make && make --v
## - - output - -
# Built for x86_64-pc-linux-gnu
# Copyright (C) 1988-2014 Free Software Foundation, Inc.
# License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
# This is free software: you are free to change and redistribute it.
# There is NO WARRANTY, to the extent permitted by law.
Docker
Run which docker && docker version
to verify your version of Docker.
$ which docker && docker version
## - - output - -
# Client:
# Version: 18.06.1-ce
# API version: 1.38
# Go version: go1.10.3
# Git commit: e68fc7a
# Built: Tue Aug 21 17:24:56 2018
# OS/Arch: linux/amd64
# Experimental: false
#
# Server:
# Engine:
# Version: 18.06.1-ce
# API version: 1.38 (minimum version 1.12)
# Go version: go1.10.3
# Git commit: e68fc7a
# Built: Tue Aug 21 17:23:21 2018
# OS/Arch: linux/amd64
# Experimental: false
Docker Compose
Run docker-compose version
to verify your version of Docker Compose.
$ which docker-compose && docker-compose version
## - - output - -
# docker-compose version 1.20.1, build 5d8c71b
# docker-py version: 3.2.1
# CPython version: 2.7.12
# OpenSSL version: OpenSSL 1.0.2g 1 Mar 2016
Development Setup Overview
The following describes the system which will be run locally. Click on it to expand it.
(.d)
. dev
is a complete subset of ops
, so whatever is in dev
is also ran in ops
.
Service | URL | User Type |
---|---|---|
AlertManager | http://localhost:9093 | ops |
DB-Maker | http://localhost:2222 | dev |
ElasticSearch (REST API) | http://localhost:9200 | ops |
ElasticSearch (Node Coomunication) | http://localhost:9300 | ops |
ElasticSearch Exporter | http://localhost:9108 | ops |
FluentD | http://localhost:24224 | ops |
FluentD Exporter | http://localhost:24231 | ops |
Grafana | http://localhost:13000 | ops |
Kibana | http://localhost:5601 | ops |
MySQL | http://localhost:3306 | dev |
MySQL Exporter | http://localhost:9104 | ops |
Nginx | http://localhost:9999 | dev |
Prometheus | http://localhost:9090 | ops |
Pulse | http://localhost:54545 | dev |
Redis | http://localhost:6379 | dev |
Redis Exporer | http://localhost:9121 | ops |
Zipkin | http://localhost:9411 | ops |
Updating PlantUML
The above system diagram was generated using PlantUML.
To modify it:
- Download it from https://sourceforge.net/projects/plantuml/files/plantuml.jar/download
- Move it into
/opt
-mv ~/Downloads/plantuml.jar /opt/plantuml.jar
- Create a script at
/opt/plantuml
-sudo touch /opt/plantuml
) - Make it executable -
sudo chmod +x /opt/plantuml
- Create a symlink to your binaries directory -
sudo ln -s /opt/plantuml /usr/bin/plantuml
- Make the symlink executable -
sudo chmod +x /usr/bin/plantuml
- Paste the following into the
/opt/plantuml
file:
#!/bin/sh
java -jar /opt/plantuml.jar $@;
You should now be able to run plantuml ./assets/dev.puml
to generate the image.