A l’époque de Corona, avec le travail décentralisé, les informations actuelles sont très demandées à tous les endroits. J’ai moi-même déjà mis en place d’innombrables systèmes d’information et j’aimerais présenter ici un super logiciel appelé Smashing.intervenant : https://smashing.github.io/Das Le projet Smashing a été développé à l’origine sous le nom de Dashing par l’entreprise Shopify pour la présentation de chiffres commerciaux. Mais on ne peut évidemment pas se contenter de représenter des chiffres commerciaux. Des développeurs du monde entier ont développé des tuiles Smashing, appelées widgets, pour Gitlab, Jenkins, Bamboo, Jira, etc., voir:https://github.com/Smashing/smashing/wiki/Additional-WidgetsDoch comment travailler avec ?
Étape 1 : Créer une image de base
Tout d’abord, je crée une image Docker simple, qui inclut déjà Ruby et Dashing.
$ mkdir dashing-project
$ cd dashing-project
$ mkdir dashboard
$ vim Dockerfile
From ubuntu:latest
ENV TZ=Europe/Berlin
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
COPY dashboard/ /code/
RUN apt-get update && apt-get install -y ruby wget unzip ruby-dev build-essential tzdata nodejs && \
gem install smashing && \
apt-get clean
Ensuite, je crée l’image docker avec cette commande :
$ docker build -t my-dashboard:latest .
Étape 2 : Créer un tableau de bord
Je peux maintenant créer un nouveau tableau de bord avec la commande suivante :
$ docker run -it -v /path/to/my/dashing-project:/code my-dashboard:latest smashing new dashboard
Très bien ! Maintenant, je dois encore une fois mettre à jour le fichier docker. Le nouveau contenu est celui-ci :
From ubuntu:latest
ENV TZ=Europe/Berlin
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
COPY dashboard/ /code/
RUN apt-get update && apt-get install -y ruby wget unzip ruby-dev build-essential tzdata nodejs && \
gem install smashing && \
gem install bundler && \
apt-get clean
RUN cd /code/ && \
bundle
RUN chown -R www-data:www-data /code/
USER www-data
WORKDIR /code/
EXPOSE 3030
CMD ["/usr/local/bin/bundle", "exec", "puma", "config.ru"]
En outre, le fichier Gemfile dans le dossier “dashboard” doit également être adapté :
source 'https://rubygems.org'
gem 'smashing'
gem 'puma'
Je répète la commande Build :
$ docker build -t my-dashboard:latest .
$ docker run -it -p 9292:9292 my-dashboard:latest
C’est la base d’un bon système d’information. On peut personnaliser toutes les couleurs, les scripts et les widgets.