Fork me on GitHub

Herr Knedel/Konteynerlerle harika şeyler: KPI Gösterge Tablosu

Created Mon, 21 Mar 2022 00:00:00 +0000 Modified Sat, 01 Oct 2022 10:58:13 +0000 Schwierigkeitsgrad: Es kann etwas länger dauern

350 Words

Özellikle Korona döneminde, merkezi olmayan çalışmalarla, güncel bilgiler tüm konumlarda yüksek talep görmektedir. Ben de halihazırda sayısız bilgi sistemi kurdum ve Smashing adlı harika bir yazılımı tanıtmak istiyorum.Konuşmacı: https://smashing.github.io/Das Smashing projesi ilk olarak Shopify şirketi tarafından iş rakamlarının sunumu için Dashing adı altında geliştirildi. Ancak elbette sadece iş rakamlarını gösteremezsiniz. Dünyanın dört bir yanından geliştiriciler Gitlab, Jenkins, Bamboo, Jira vb. için widget olarak adlandırılan Smashing kutucukları geliştirdiler, bkz:https://github.com/Smashing/smashing/wiki/Additional-WidgetsDoch bununla nasıl çalışıyorsunuz?

Adım 1: Temel görüntü oluşturun

İlk olarak, Ruby ve Dashing içeren basit bir Docker imajı oluşturuyorum.

x
+
Terminal

$ mkdir dashing-project
$ cd dashing-project
$ mkdir dashboard
$ vim Dockerfile

Dockerfile dosyasına yazdığım ilk içerik bu:

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

Daha sonra bu komut ile Docker imajını oluşturuyorum:

x
+
Terminal

$ docker build -t my-dashboard:latest .

Benim için böyle görünüyor:

Adım 2: Gösterge Tablosu Oluşturun

Şimdi aşağıdaki komutla yeni bir gösterge tablosu oluşturabilirim:

x
+
Terminal

$ docker run -it -v /path/to/my/dashing-project:/code my-dashboard:latest smashing new dashboard

Bundan sonra, Dashing projesindeki “dashboard” klasörü aşağıdaki gibi görünmelidir: Çok iyi! Şimdi Docker dosyasını tekrar güncellemem gerekiyor. Yeni içerik şu şekildedir:

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"]

Ayrıca, “dashboard” klasöründeki Gemfile dosyası da uyarlanmalıdır:

source 'https://rubygems.org'

gem 'smashing'
gem 'puma'

Oluşturma komutunu tekrarlıyorum:

x
+
Terminal

$ docker build -t my-dashboard:latest .

Artık yeni panomu ilk kez başlatabilir ve http://localhost:9292 adresinden erişebilirim.
x
+
Terminal

$ docker run -it -p 9292:9292 my-dashboard:latest

Ve işte böyle görünüyor: Bu, iyi bir bilgi sisteminin temelidir. Tüm renkleri, komut dosyalarını ve widget’ları özelleştirebilirsiniz.