Ö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.
$ 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
Daha sonra bu komut ile Docker imajını oluşturuyorum:
$ docker build -t my-dashboard:latest .
Adım 2: Gösterge Tablosu Oluşturun
Şimdi aşağıdaki komutla yeni bir gösterge tablosu oluşturabilirim:
$ docker run -it -v /path/to/my/dashing-project:/code my-dashboard:latest smashing new dashboard
Ç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:
$ docker build -t my-dashboard:latest .
$ docker run -it -p 9292:9292 my-dashboard:latest
Bu, iyi bir bilgi sisteminin temelidir. Tüm renkleri, komut dosyalarını ve widget’ları özelleştirebilirsiniz.