MicroOS toolbox and Distrobox allow running privileged containers on openSUSE systems. Toolbox uses a default openSUSE image but allows any image, while Distrobox supports arbitrary images out of the box. They integrate tightly with the host for development, troubleshooting, and third party software, but security is not the goal so users should be cautious. Both tools make it easy to install packages, add repositories, and have persistent home directories between sessions like a traditional system.
The document discusses observability in microservices and provides an overview of key concepts. It introduces One Concern, which monitors buildings and natural disasters, and describes the differences between monoliths and microservices. It then covers the three pillars of observability - monitoring, logging, and tracing - and provides examples of tools for each. The rest of the document focuses on Jaeger, describing its architecture, benefits, features, terminology, and includes a demo. It concludes by mentioning One Concern is hiring.
Introduction to Docker at SF Peninsula Software Development Meetup @GuidewiredotCloud
This document provides an introduction and overview of Docker and containers. It discusses that Docker is an open source tool that allows applications to be packaged with all their dependencies and run as isolated processes on any machine. Containers provide lightweight virtualization that improves efficiency by sharing resources but still isolating processes. The document outlines how Docker uses containers powered by Linux namespaces and cgroups to package and deploy applications easily and consistently across environments.
This document introduces Docker and containers. It discusses that Docker provides a way to easily deploy applications by using lightweight virtualization to isolate applications into containers. These containers can then be easily shared between systems. The document outlines what problem containers solve, provides an overview of how Docker works, and discusses how to author Docker images using Dockerfiles or by committing changes to containers. It also discusses the Docker community and ecosystem and Docker's long term roadmap to further simplify deployment of applications.
Настройка окружения для кросскомпиляции проектов на основе docker'acorehard_by
Как быстро и легко настраивать/обновлять окружения для кросскомпиляции проектов под различные платформы(на основе docker), как быстро переключаться между ними, как используя эти кирпичики организовать CI и тестирование(на основе GitLab и Docker).
Puppet Camp Chicago 2014: Docker and Puppet: 1+1=3 (Intermediate)Puppet
This document discusses Docker and Puppet and how they can be used together. It describes how Puppet can be used to install and configure Docker on a system and then how Dockerfiles can be used to build container images. However, it notes that using Puppet to build container images directly is not recommended and describes alternatives like using Puppet during the build process to configure "golden images" and then deploying them. It suggests approaches like running services externally to containers and using data containers to optimize container usage.
A Gentle Introduction To Docker And All Things ContainersJérôme Petazzoni
Docker is a runtime for Linux Containers. It enables "separation of concern" between devs and ops, and solves the "matrix from hell" of software deployment. This presentation explains it all! It also explains the role of the storage backend and compares the various backends available. It gives multiple recipes to build Docker images, including integration with configuration management software like Chef, Puppet, Salt, Ansible. If you already watched other Docker presentations, this is an actualized version (as of mid-November 2013) of the thing!
The document discusses observability in microservices and provides an overview of key concepts. It introduces One Concern, which monitors buildings and natural disasters, and describes the differences between monoliths and microservices. It then covers the three pillars of observability - monitoring, logging, and tracing - and provides examples of tools for each. The rest of the document focuses on Jaeger, describing its architecture, benefits, features, terminology, and includes a demo. It concludes by mentioning One Concern is hiring.
Introduction to Docker at SF Peninsula Software Development Meetup @GuidewiredotCloud
This document provides an introduction and overview of Docker and containers. It discusses that Docker is an open source tool that allows applications to be packaged with all their dependencies and run as isolated processes on any machine. Containers provide lightweight virtualization that improves efficiency by sharing resources but still isolating processes. The document outlines how Docker uses containers powered by Linux namespaces and cgroups to package and deploy applications easily and consistently across environments.
This document introduces Docker and containers. It discusses that Docker provides a way to easily deploy applications by using lightweight virtualization to isolate applications into containers. These containers can then be easily shared between systems. The document outlines what problem containers solve, provides an overview of how Docker works, and discusses how to author Docker images using Dockerfiles or by committing changes to containers. It also discusses the Docker community and ecosystem and Docker's long term roadmap to further simplify deployment of applications.
Настройка окружения для кросскомпиляции проектов на основе docker'acorehard_by
Как быстро и легко настраивать/обновлять окружения для кросскомпиляции проектов под различные платформы(на основе docker), как быстро переключаться между ними, как используя эти кирпичики организовать CI и тестирование(на основе GitLab и Docker).
Puppet Camp Chicago 2014: Docker and Puppet: 1+1=3 (Intermediate)Puppet
This document discusses Docker and Puppet and how they can be used together. It describes how Puppet can be used to install and configure Docker on a system and then how Dockerfiles can be used to build container images. However, it notes that using Puppet to build container images directly is not recommended and describes alternatives like using Puppet during the build process to configure "golden images" and then deploying them. It suggests approaches like running services externally to containers and using data containers to optimize container usage.
A Gentle Introduction To Docker And All Things ContainersJérôme Petazzoni
Docker is a runtime for Linux Containers. It enables "separation of concern" between devs and ops, and solves the "matrix from hell" of software deployment. This presentation explains it all! It also explains the role of the storage backend and compares the various backends available. It gives multiple recipes to build Docker images, including integration with configuration management software like Chef, Puppet, Salt, Ansible. If you already watched other Docker presentations, this is an actualized version (as of mid-November 2013) of the thing!
Introduction to Docker and all things containers, Docker Meetup at RelateIQdotCloud
Docker is an open-source project to easily create lightweight, portable, self-sufficient containers from any application. The same container that a developer builds and tests on a laptop can run at scale, in production, on VMs, bare metal, OpenStack clusters, public clouds and more.
"Containers wrap up software with all its dependencies in packages that can be executed anywhere. This can be specially useful in HPC environments where, often, getting the right combination of software tools to build applications is a daunting task. However, typical container solutions such as Docker are not a perfect fit for HPC environments. Instead, Shifter is a better fit as it has been built from the ground up with HPC in mind. In this talk, we show you what Shifter is and how to leverage from the current Docker environment to run your applications with Shifter."
Watch the video presentation: http://wp.me/p3RLHQ-f81
See more talks in the Switzerland HPC Conference Video Gallery: http://insidehpc.com/2016-swiss-hpc-conference/
Sign up for our insideHPC Newsletter: http://insidehpc.com/newsletter
Real-World Docker: 10 Things We've Learned RightScale
Docker has taken the world of software by storm, offering the promise of a portable way to build and ship software - including software running in the cloud. The RightScale development team has been diving into Docker for several projects, and we'll share our lessons learned on using Docker for our cloud-based applications.
A Gentle Introduction to Docker and ContainersDocker, Inc.
This document provides an introduction to Docker and containers. It outlines that Docker is an open source tool that makes it easy to deploy applications by using containers. Containers allow applications to be isolated for easier management and deployment. The document discusses how Docker builds on existing container technologies and provides a standardized way to build, share, and run application containers.
This document discusses Docker and containers. It begins with an introduction to Docker and the container model. It explains that containers provide isolation using namespaces and cgroups. Containers deploy applications efficiently by sharing resources and deploying anywhere due to standardization. The document then covers building images with Dockerfiles for reproducible builds. It concludes by discussing Docker's future including networking, metrics, logging, plugins and orchestration.
The document discusses the author's approach to setting up a development environment for Django projects. It describes establishing a project layout with separate folders for source code, virtual environments, requirements files, and more. It also covers tools and practices for tasks like dependency management, testing, debugging, deployment, and overall software development philosophy.
Take care of hundred containers and not go crazyHonza Horák
This document summarizes Honza Horak's presentation on strategies for managing a large portfolio of container images. It discusses sharing sources and scripts across versions to reduce duplication and simplify maintenance. Templating approaches are presented to generate downstream variants from a single upstream source. Maintaining common packages and scripts in intermediate layers is suggested to facilitate reuse. The use of automated tests for container images on each change is also advocated to prevent regressions.
Pilot Tech Talk #10 — Practical automation by Kamil CholewińskiPilot
See how Kamil Cholewiński talks about Practical automation in Tech Talk episode 10
Visit pilot.co — World’s best engineering and design talent on demand.
YouTube: https://youtu.be/x0eQ7x7xN8o
Presenting adhocr (abbreviation for Ad-hoc copy and run) as a simple, but powerful UNIX administrator tool. If you like to retrieve data or execute commands on lots of systems simultaneously then this tool is your friend. There is no need to exchange your ssh keys as the power behind adhocr is the expect tool (language). For example, it is plain easy to use adhocr to distribute your public ssh key to all your systems. The real power of adhocr is the central point of logging, which is perfect for \'grep\'ing into stuff you\'re looking for.
You also have the ability to execute commands via the \'sudo su -\' way, which is a blessing in environments where root is not permitted to login directly.
You can even use it monitoring your systems thanks to the powerful error catching.
Tools and Process for Streamlining Mac DeploymentTimothy Sutton
This presentation was given at the MacSysAdmin 2016 conference in Gotebörg, Sweden. Session description follows:
Apple’s popularity and their approach to selling hardware is revolutionizing how IT gets that hardware into the hands of its users. Every year’s new Macs and OS X bring new changes, which doesn’t leave much time for the repetitive setup tasks that are involved in getting machines ready for users (or our testing!). It’s easy to fall behind on OS support, but we have no choice but to support the latest.
The Mac sysadmin community is blessed with so many great open-source tools at its disposal for deploying and managing Macs. We'll look at approaches and tools for automating these to bring speed, consistency and sanity to our deployment processes. By being more systematic, we can be more agile, and reclaim time to work on more important problems.
This session will focus on OS X hardware and tools, but the approaches discussed apply equally to iOS devices.
Headless Android allows running the full Android system software stack without a graphical user interface. It is achieved by disabling SurfaceFlinger and the WindowManager system services. This removes the display and window management functionality while retaining all other Android frameworks and APIs. The result is a headless version of Android that can be used for building embedded and specialized devices without screen output.
Introduction to Docker (as presented at December 2013 Global Hackathon)Jérôme Petazzoni
Not on board of the Docker ship yet? This presentation will get you up to speed, and explain everything you want to know about Linux Containers and Docker, including the new features of the latest 0.7 version (which brings support for all Linux distros and kernels).
A guest lecture at National University of Defense Technology (NUDT) in 2016 to postgraduate students in China about emerging technologies in the Linux operating system.
Containers for Science and High-Performance ComputingDmitry Spodarets
Within this talk, we will explore how Singularity liberates non-privileged users and host resources (such as interconnects, resource managers, file systems, accelerators, etc.) allowing users to take full control to set-up and run in their native environments. This talk explores how Singularity combines software packaging models with minimalistic containers to create very lightweight application bundles which can be simply executed and contained completely within their environment or be used to interact directly with the host file systems at native speeds. A Singularity application bundle can be as simple as containing a single binary application or as complicated as containing an entire workflow and is as flexible as you will need.
Introduction to Docker, December 2014 "Tour de France" Bordeaux Special EditionJérôme Petazzoni
Docker, the Open Source container Engine, lets you build, ship and run, any app, anywhere.
This is the presentation which was shown in December 2014 for the last stop of the "Tour de France" in Bordeaux. It is slightly different from the presentation which was shown in the other cities (http://www.slideshare.net/jpetazzo/introduction-to-docker-december-2014-tour-de-france-edition), and includes a detailed history of dotCloud and Docker and a few other differences.
Special thanks to https://twitter.com/LilliJane and https://twitter.com/zirkome, who gave me the necessary motivation to put together this slightly different presentation, since they had already seen the other presentation in Paris :-)
This document introduces Docker and provides an overview of its key features and benefits. It explains that Docker allows developers to package applications into lightweight containers that can run on any Linux server. Containers deploy instantly and consistently across environments due to their isolation via namespaces and cgroups. The document also summarizes Docker's architecture including storage drivers, images, and the Dockerfile for building images.
Docker Introduction, and what's new in 0.9 — Docker Palo Alto at RelateIQJérôme Petazzoni
Docker is the Open Source container engine. This is an introduction to Docker, what it is, how it works, and some material presenting the new features in versions 0.8 and 0.9.
Introdution to Docker (theory and hands on) dbCafé - dbTrentoCristian Consonni
In this presentation I will introduce Docker, an "an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating-system-level virtualization on Linux." (source: Wikipedia). The presentation has an initial theoretical part and a second more practical, hands on part.
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...Jérôme Petazzoni
If you're not familiar yet with Docker, here is your chance to catch up. This presentation includes a quick overview of the Open Source Docker Engine, and its associated services delivered through the Docker Hub. Recent features are listed, as well as a glimpse at what's next in the Docker world.
This presentation was given during OSCON, at a meet-up hosted by New Relic, with co-presentations from CoreOS and Rackspace OnMetal.
Build your own embedded linux distributions by yocto projectYen-Chin Lee
The document discusses the Yocto Project, an open-source collaboration project that provides templates, tools, and methods for creating custom Linux-based systems for embedded products. It provides an overview of the key components of Yocto including Poky, BitBake, and metadata. It also summarizes how to get started with Yocto including downloading Poky, setting up the build environment, and building a minimal image that can be run in QEMU for testing purposes.
Introduction to Docker and all things containers, Docker Meetup at RelateIQdotCloud
Docker is an open-source project to easily create lightweight, portable, self-sufficient containers from any application. The same container that a developer builds and tests on a laptop can run at scale, in production, on VMs, bare metal, OpenStack clusters, public clouds and more.
"Containers wrap up software with all its dependencies in packages that can be executed anywhere. This can be specially useful in HPC environments where, often, getting the right combination of software tools to build applications is a daunting task. However, typical container solutions such as Docker are not a perfect fit for HPC environments. Instead, Shifter is a better fit as it has been built from the ground up with HPC in mind. In this talk, we show you what Shifter is and how to leverage from the current Docker environment to run your applications with Shifter."
Watch the video presentation: http://wp.me/p3RLHQ-f81
See more talks in the Switzerland HPC Conference Video Gallery: http://insidehpc.com/2016-swiss-hpc-conference/
Sign up for our insideHPC Newsletter: http://insidehpc.com/newsletter
Real-World Docker: 10 Things We've Learned RightScale
Docker has taken the world of software by storm, offering the promise of a portable way to build and ship software - including software running in the cloud. The RightScale development team has been diving into Docker for several projects, and we'll share our lessons learned on using Docker for our cloud-based applications.
A Gentle Introduction to Docker and ContainersDocker, Inc.
This document provides an introduction to Docker and containers. It outlines that Docker is an open source tool that makes it easy to deploy applications by using containers. Containers allow applications to be isolated for easier management and deployment. The document discusses how Docker builds on existing container technologies and provides a standardized way to build, share, and run application containers.
This document discusses Docker and containers. It begins with an introduction to Docker and the container model. It explains that containers provide isolation using namespaces and cgroups. Containers deploy applications efficiently by sharing resources and deploying anywhere due to standardization. The document then covers building images with Dockerfiles for reproducible builds. It concludes by discussing Docker's future including networking, metrics, logging, plugins and orchestration.
The document discusses the author's approach to setting up a development environment for Django projects. It describes establishing a project layout with separate folders for source code, virtual environments, requirements files, and more. It also covers tools and practices for tasks like dependency management, testing, debugging, deployment, and overall software development philosophy.
Take care of hundred containers and not go crazyHonza Horák
This document summarizes Honza Horak's presentation on strategies for managing a large portfolio of container images. It discusses sharing sources and scripts across versions to reduce duplication and simplify maintenance. Templating approaches are presented to generate downstream variants from a single upstream source. Maintaining common packages and scripts in intermediate layers is suggested to facilitate reuse. The use of automated tests for container images on each change is also advocated to prevent regressions.
Pilot Tech Talk #10 — Practical automation by Kamil CholewińskiPilot
See how Kamil Cholewiński talks about Practical automation in Tech Talk episode 10
Visit pilot.co — World’s best engineering and design talent on demand.
YouTube: https://youtu.be/x0eQ7x7xN8o
Presenting adhocr (abbreviation for Ad-hoc copy and run) as a simple, but powerful UNIX administrator tool. If you like to retrieve data or execute commands on lots of systems simultaneously then this tool is your friend. There is no need to exchange your ssh keys as the power behind adhocr is the expect tool (language). For example, it is plain easy to use adhocr to distribute your public ssh key to all your systems. The real power of adhocr is the central point of logging, which is perfect for \'grep\'ing into stuff you\'re looking for.
You also have the ability to execute commands via the \'sudo su -\' way, which is a blessing in environments where root is not permitted to login directly.
You can even use it monitoring your systems thanks to the powerful error catching.
Tools and Process for Streamlining Mac DeploymentTimothy Sutton
This presentation was given at the MacSysAdmin 2016 conference in Gotebörg, Sweden. Session description follows:
Apple’s popularity and their approach to selling hardware is revolutionizing how IT gets that hardware into the hands of its users. Every year’s new Macs and OS X bring new changes, which doesn’t leave much time for the repetitive setup tasks that are involved in getting machines ready for users (or our testing!). It’s easy to fall behind on OS support, but we have no choice but to support the latest.
The Mac sysadmin community is blessed with so many great open-source tools at its disposal for deploying and managing Macs. We'll look at approaches and tools for automating these to bring speed, consistency and sanity to our deployment processes. By being more systematic, we can be more agile, and reclaim time to work on more important problems.
This session will focus on OS X hardware and tools, but the approaches discussed apply equally to iOS devices.
Headless Android allows running the full Android system software stack without a graphical user interface. It is achieved by disabling SurfaceFlinger and the WindowManager system services. This removes the display and window management functionality while retaining all other Android frameworks and APIs. The result is a headless version of Android that can be used for building embedded and specialized devices without screen output.
Introduction to Docker (as presented at December 2013 Global Hackathon)Jérôme Petazzoni
Not on board of the Docker ship yet? This presentation will get you up to speed, and explain everything you want to know about Linux Containers and Docker, including the new features of the latest 0.7 version (which brings support for all Linux distros and kernels).
A guest lecture at National University of Defense Technology (NUDT) in 2016 to postgraduate students in China about emerging technologies in the Linux operating system.
Containers for Science and High-Performance ComputingDmitry Spodarets
Within this talk, we will explore how Singularity liberates non-privileged users and host resources (such as interconnects, resource managers, file systems, accelerators, etc.) allowing users to take full control to set-up and run in their native environments. This talk explores how Singularity combines software packaging models with minimalistic containers to create very lightweight application bundles which can be simply executed and contained completely within their environment or be used to interact directly with the host file systems at native speeds. A Singularity application bundle can be as simple as containing a single binary application or as complicated as containing an entire workflow and is as flexible as you will need.
Introduction to Docker, December 2014 "Tour de France" Bordeaux Special EditionJérôme Petazzoni
Docker, the Open Source container Engine, lets you build, ship and run, any app, anywhere.
This is the presentation which was shown in December 2014 for the last stop of the "Tour de France" in Bordeaux. It is slightly different from the presentation which was shown in the other cities (http://www.slideshare.net/jpetazzo/introduction-to-docker-december-2014-tour-de-france-edition), and includes a detailed history of dotCloud and Docker and a few other differences.
Special thanks to https://twitter.com/LilliJane and https://twitter.com/zirkome, who gave me the necessary motivation to put together this slightly different presentation, since they had already seen the other presentation in Paris :-)
This document introduces Docker and provides an overview of its key features and benefits. It explains that Docker allows developers to package applications into lightweight containers that can run on any Linux server. Containers deploy instantly and consistently across environments due to their isolation via namespaces and cgroups. The document also summarizes Docker's architecture including storage drivers, images, and the Dockerfile for building images.
Docker Introduction, and what's new in 0.9 — Docker Palo Alto at RelateIQJérôme Petazzoni
Docker is the Open Source container engine. This is an introduction to Docker, what it is, how it works, and some material presenting the new features in versions 0.8 and 0.9.
Introdution to Docker (theory and hands on) dbCafé - dbTrentoCristian Consonni
In this presentation I will introduce Docker, an "an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating-system-level virtualization on Linux." (source: Wikipedia). The presentation has an initial theoretical part and a second more practical, hands on part.
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...Jérôme Petazzoni
If you're not familiar yet with Docker, here is your chance to catch up. This presentation includes a quick overview of the Open Source Docker Engine, and its associated services delivered through the Docker Hub. Recent features are listed, as well as a glimpse at what's next in the Docker world.
This presentation was given during OSCON, at a meet-up hosted by New Relic, with co-presentations from CoreOS and Rackspace OnMetal.
Build your own embedded linux distributions by yocto projectYen-Chin Lee
The document discusses the Yocto Project, an open-source collaboration project that provides templates, tools, and methods for creating custom Linux-based systems for embedded products. It provides an overview of the key components of Yocto including Poky, BitBake, and metadata. It also summarizes how to get started with Yocto including downloading Poky, setting up the build environment, and building a minimal image that can be run in QEMU for testing purposes.
ACEP Magazine edition 4th launched on 05.06.2024Rahul
This document provides information about the third edition of the magazine "Sthapatya" published by the Association of Civil Engineers (Practicing) Aurangabad. It includes messages from current and past presidents of ACEP, memories and photos from past ACEP events, information on life time achievement awards given by ACEP, and a technical article on concrete maintenance, repairs and strengthening. The document highlights activities of ACEP and provides a technical educational article for members.
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELgerogepatton
As digital technology becomes more deeply embedded in power systems, protecting the communication
networks of Smart Grids (SG) has emerged as a critical concern. Distributed Network Protocol 3 (DNP3)
represents a multi-tiered application layer protocol extensively utilized in Supervisory Control and Data
Acquisition (SCADA)-based smart grids to facilitate real-time data gathering and control functionalities.
Robust Intrusion Detection Systems (IDS) are necessary for early threat detection and mitigation because
of the interconnection of these networks, which makes them vulnerable to a variety of cyberattacks. To
solve this issue, this paper develops a hybrid Deep Learning (DL) model specifically designed for intrusion
detection in smart grids. The proposed approach is a combination of the Convolutional Neural Network
(CNN) and the Long-Short-Term Memory algorithms (LSTM). We employed a recent intrusion detection
dataset (DNP3), which focuses on unauthorized commands and Denial of Service (DoS) cyberattacks, to
train and test our model. The results of our experiments show that our CNN-LSTM method is much better
at finding smart grid intrusions than other deep learning algorithms used for classification. In addition,
our proposed approach improves accuracy, precision, recall, and F1 score, achieving a high detection
accuracy rate of 99.50%.
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECTjpsjournal1
The rivalry between prominent international actors for dominance over Central Asia's hydrocarbon
reserves and the ancient silk trade route, along with China's diplomatic endeavours in the area, has been
referred to as the "New Great Game." This research centres on the power struggle, considering
geopolitical, geostrategic, and geoeconomic variables. Topics including trade, political hegemony, oil
politics, and conventional and nontraditional security are all explored and explained by the researcher.
Using Mackinder's Heartland, Spykman Rimland, and Hegemonic Stability theories, examines China's role
in Central Asia. This study adheres to the empirical epistemological method and has taken care of
objectivity. This study analyze primary and secondary research documents critically to elaborate role of
china’s geo economic outreach in central Asian countries and its future prospect. China is thriving in trade,
pipeline politics, and winning states, according to this study, thanks to important instruments like the
Shanghai Cooperation Organisation and the Belt and Road Economic Initiative. According to this study,
China is seeing significant success in commerce, pipeline politics, and gaining influence on other
governments. This success may be attributed to the effective utilisation of key tools such as the Shanghai
Cooperation Organisation and the Belt and Road Economic Initiative.
A review on techniques and modelling methodologies used for checking electrom...nooriasukmaningtyas
The proper function of the integrated circuit (IC) in an inhibiting electromagnetic environment has always been a serious concern throughout the decades of revolution in the world of electronics, from disjunct devices to today’s integrated circuit technology, where billions of transistors are combined on a single chip. The automotive industry and smart vehicles in particular, are confronting design issues such as being prone to electromagnetic interference (EMI). Electronic control devices calculate incorrect outputs because of EMI and sensors give misleading values which can prove fatal in case of automotives. In this paper, the authors have non exhaustively tried to review research work concerned with the investigation of EMI in ICs and prediction of this EMI using various modelling methodologies and measurement setups.
Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...University of Maribor
Slides from talk presenting:
Aleš Zamuda: Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapter and Networking.
Presentation at IcETRAN 2024 session:
"Inter-Society Networking Panel GRSS/MTT-S/CIS
Panel Session: Promoting Connection and Cooperation"
IEEE Slovenia GRSS
IEEE Serbia and Montenegro MTT-S
IEEE Slovenia CIS
11TH INTERNATIONAL CONFERENCE ON ELECTRICAL, ELECTRONIC AND COMPUTING ENGINEERING
3-6 June 2024, Niš, Serbia
Understanding Inductive Bias in Machine LearningSUTEJAS
This presentation explores the concept of inductive bias in machine learning. It explains how algorithms come with built-in assumptions and preferences that guide the learning process. You'll learn about the different types of inductive bias and how they can impact the performance and generalizability of machine learning models.
The presentation also covers the positive and negative aspects of inductive bias, along with strategies for mitigating potential drawbacks. We'll explore examples of how bias manifests in algorithms like neural networks and decision trees.
By understanding inductive bias, you can gain valuable insights into how machine learning models work and make informed decisions when building and deploying them.
Manufacturing Process of molasses based distillery ppt.pptx
A "Box" Full of Tools and Distros
1. A "Box" Full of Tools
and Distros
Toolbox and Distrobox on openSUSE
MicroOS & Tumbleweed
openSUSE Conference
project@lists.opensuse.org
oSC22 @openSUSE
2. About Myself
● Ph.D on Real-Time Scheduling, soft real-time scheduling
in Linux SCHED_DEADLINE
● 2011, Sr. Software Engineer @ Citrix The Xen-Project,
hypervisor internals, NUMA-aware scheduler, Credit2
scheduler, Xen scheduler maintainer
● 2018, Virtualization Software Engineer @ SUSE Xen,
KVM, QEMU, Libvirt; core-scheduling, performance
evaluation & tuning
● openSUSE contributor, maintain QEMU, kvm_stat, crun,
distrobox, libkrun*, libtraceevent, kernel-shark in Factory.
Play/tries to help MicroOS Desktop
● https://about.me/dario.faggioli
Mail: <dfaggioli@suse.com>
Twitter: @DarioFaggioli
IRC: dariof
3. Linux Containers
“Linux containers, in short, contain applications in a way that keep them isolated
from the host system that they run on.”[What are Linux containers?]
“Application containers enable the user to create and run a separate container for
multiple independent applications, or multiple services that constitute a single
application.” [What Are Containers]
“They are designed to be stateless and immutable. [...] Stateless means that any
state (persistent data of any kind) is stored outside of a container. [...] Immutable
means that a container won't be modified during its life: no updates, no patches,
no configuration changes. If you must update the application code or apply a
patch, you build a new image and redeploy it.” [Best practices for operating
containers]
4. Toolbox & distrobox
Are they containers? Yes, theyʼre containers, but…
● Tightly integrated with and not at all isolated from the host
● They typically contain and runs many different applications
(even full DEs [1])
● They keep their state, i.e., youʼll find them as you left the
previous time, with all the modifications/updates/changes,
applied
What the … :-O
[1] Run Latest GNOME or KDE on Distrobox
5. What the … Why the…
Immutable OSes:
● Silverblue, MicroOS Desktop, EndlessOS,
SteamOS 3, …
“Keeping it clean”:
● When doing development
● When needing 3rd party packages/repos
● One time troubleshooting
7. Keeping It Clean: Dev Work
● Dependencies for building QEMU [1] from sources:
bc bison bluez-devel brlapi-devel bzip2 ccache clang
cyrus-sasl-devel flex gcc gcc-c++ gettext-tools git
glib2-devel glusterfs-devel gtk3-devel gtkglext-devel gzip
hostname libSDL2-devel libaio-devel libasan4 libcap-devel
libcap-ng-devel libcurl-devel libfdt-devel libgcrypt-devel
libgnutls-devel libjpeg62-devel libnettle-devel libnuma-devel
libpixman-1-0-devel libpng16-devel librbd-devel
libseccomp-devel libspice-server-devel libssh-devel
libssh2-devel libtasn1-devel libudev-devel libxml2-devel
lzo-devel make makeinfo multipath-tools-devel ncurses-devel
perl pkg-config python3 python3-PyYAML python3-Sphinx
rdma-core-devel snappy-devel sparse tar usbredir-devel
virglrenderer-devel vte-devel which xen-devel zlib-devel
● Install all… Will you remember to remove them when no longer needed?
● What if, you need to try a particular version of one of those
○ E.g., from a specific repo?
○ E.g., from sources?
[1] slightly outdated
8. Keeping It Clean: 3rd party
● openSUSE Tumbleweed, the “reliable rolling” distro
● Snapshots are tested with OpenQA before release
Users:
● Add Packman, for codecs
● Add openSUSE:Tools.repo, for osc (dev on OBS)
● Add home: repo this and that
⇒ Not what has been tested!
⇒ The system can break!
9. Keeping It Clean: trblsht
● NETWORK GLITCH! NETWORK GLITCH!
Is it me? Is it my LAN? Is it the server?
● I need nmap, tcpdump, traceroute !!!
● …
● …
● Oh, nevermind, all back to normal… And I
no longer need those
10. What the … Why the…
Immutable OS
● Silverblue, MicroOS Desktop, EndlessOS, SteamOS 3
“Keeping it clean”:
● When doing development
● When needing 3rd party packages/repos
● One time troubleshooting
⇒ Letʼs do these things outside the main OS
11. Outside Where?
In a container, but:
● We want to be able to install 3rd party apps, and launch them “on
the host”
● We want to be able to run our workload (e.g., development) in it
● We want to be able to troubleshoot the host, from inside
So, a special container, in which:
● You can add repos, install and remove packages, etc (without
rebooting!)
○ Even graphical ones!
● You have your user configured inside it
● You can become root, e.g., with sudo
● You have your home in there, with all your files, in its usual place
● Such files have the proper owner, group, permissions, etc.
● You can reach your agents (SSH, GPG), running on the host
● Everything is like when you “left” last time
12. Outside Where?
In a container, but:
● We want to be able to install 3rd party apps, and launch them “on
the host”
● We want to be able to run our workload (e.g., development) in it
● We want to be able to troubleshoot the host, from inside
So, a special container, in which:
● You can add repos, install and remove packages, etc (without
rebooting!)
○ Even graphical ones!
● You have your user configured inside it
● You can become root, e.g., with sudo
● You have your home in there, with all your files, in its usual place
● Such files have the proper owner, group, permissions, etc.
● You can reach your agents (SSH, GPG), running on the host
● Everything is like when you “left” last time
SOLUTION:
Privileged podman (or Docker) container, with tight
integration with the host
BEWARE:
● security is not a goal!
● Be on the safe side: just assume youʼre on the host!
13. MicroOS toolbox
A shell script that wraps the creation & launch of the container,
out of an (almost arbitrary) image
https://github.com/openSUSE/microos-toolbox
Born with the troubleshooting use-case in mind. Then evolved
If on podman, can run rootful or rootless
● openSUSE Tumbleweed:
sudo zypper in toolbox
● openSUSE MicroOS [Desktop]
Preinstalled :-)
14. MicroOS toolbox
Just enter…
dario@Wayrath:~> toolbox enter pippo
.toolboxrc file detected, overriding defaults...
Trying to pull registry.opensuse.org/opensuse/toolbox:latest...
Getting image source signatures
Copying blob a7ea7c85d7ba done
Copying blob d547268175e5 done
Copying config c153c4c332 done
Writing manifest to image destination
Storing signatures
c153c4c33214efe7817819e2db98fa414bf77f81fc44f2b8525d682142e402dd
Spawning a container 'pippo' with image 'registry.opensuse.org/opensuse/toolbox'
Setting up user 'dario' (with 'sudo' access) inside the container...
(NOTE that, if 'sudo' and related packages are not present in the image already,
this may take some time. But this will only happen now that the toolbox is being created)
Container created.
Entering container. To exit, type 'exit'.
dario@pippo:~>
… And do whatever!
15. MicroOS toolbox
Just enter…
dario@Wayrath:~> toolbox enter pippo
.toolboxrc file detected, overriding defaults...
Trying to pull registry.opensuse.org/opensuse/toolbox:latest...
Getting image source signatures
Copying blob a7ea7c85d7ba done
Copying blob d547268175e5 done
Copying config c153c4c332 done
Writing manifest to image destination
Storing signatures
c153c4c33214efe7817819e2db98fa414bf77f81fc44f2b8525d682142e402dd
Spawning a container 'pippo' with image 'registry.opensuse.org/opensuse/toolbox'
Setting up user 'dario' (with 'sudo' access) inside the container...
(NOTE that, if 'sudo' and related packages are not present in the image already,
this may take some time. But this will only happen now that the toolbox is being created)
Container created.
Entering container. To exit, type 'exit'.
dario@pippo:~>
… And do whatever!
Container name
16. MicroOS toolbox
Just enter…
dario@Wayrath:~> toolbox enter pippo
.toolboxrc file detected, overriding defaults...
Trying to pull registry.opensuse.org/opensuse/toolbox:latest...
Getting image source signatures
Copying blob a7ea7c85d7ba done
Copying blob d547268175e5 done
Copying config c153c4c332 done
Writing manifest to image destination
Storing signatures
c153c4c33214efe7817819e2db98fa414bf77f81fc44f2b8525d682142e402dd
Spawning a container 'pippo' with image 'registry.opensuse.org/opensuse/toolbox'
Setting up user 'dario' (with 'sudo' access) inside the container...
(NOTE that, if 'sudo' and related packages are not present in the image already,
this may take some time. But this will only happen now that the toolbox is being created)
Container created.
Entering container. To exit, type 'exit'.
dario@pippo:~>
… And do whatever!
Container name
Config file (can also
be in /usr/etc, or /etc)
17. MicroOS toolbox
Just enter…
dario@Wayrath:~> toolbox enter pippo
.toolboxrc file detected, overriding defaults...
Trying to pull registry.opensuse.org/opensuse/toolbox:latest...
Getting image source signatures
Copying blob a7ea7c85d7ba done
Copying blob d547268175e5 done
Copying config c153c4c332 done
Writing manifest to image destination
Storing signatures
c153c4c33214efe7817819e2db98fa414bf77f81fc44f2b8525d682142e402dd
Spawning a container 'pippo' with image 'registry.opensuse.org/opensuse/toolbox'
Setting up user 'dario' (with 'sudo' access) inside the container...
(NOTE that, if 'sudo' and related packages are not present in the image already,
this may take some time. But this will only happen now that the toolbox is being created)
Container created.
Entering container. To exit, type 'exit'.
dario@pippo:~>
… And do whatever!
Container name
Config file (can also
be in /usr/etc, or /etc)
Default container image
(different one can be specified
in config file or command line)
18. MicroOS toolbox
Managing toolboxes (not that much):
dario@Wayrath:~> toolbox create pippo # just create, no enter (yet)
dario@Wayrath:~> toolbox run -c pippo -- ls -l # run command (ls -l) inside of pippo
dario@Wayrath:~> podman ps # shows all running containers (not just toolboxes!!!)
dario@Wayrath:~> podman ps -a # shows all containers (not just toolboxes!!!)
dario@Wayrath:~> podman rm pippo # removes the container pippo
dario@Wayrath:~> podman --help # for all options
Rootful toolboxes:
dario@Wayrath:~> toolbox enter -r pluto # create (if not exists) and enter
dario@Wayrath:~> toolbox create -r pluto # just create
19. Distrobox
Also shell script, also wraps podman/docker
https://github.com/89luca89/distrobox
Born to enhance the toolbox [1] idea and implementation with
● richer and easier UI/UX
● Arbitrary (i.e., of any distro) & out-of-the-box image support
● openSUSE Tumbleweed
sudo zypper in distrobox
● openSUSE MicroOS
sudo transactional-update pkg install
distrobox
(maybe pkcon install distrobox … “itʼs complicated”!)
[1] This implementation of it, FTR
21. Distrobox
Then enter:
dario@Wayrath:~> distrobox enter paperino
Container paperino is not running.
Starting container paperino
run this command to follow along:
podman logs -f paperino
Starting container... [ OK ]
Installing basic packages... [ OK ]
Setting up read-only mounts... [ OK ]
Setting up read-write mounts... [ OK ]
Setting up host's sockets integration... [ OK ]
Integrating host's themes, icons, fonts...[ OK ]
Setting up package manager exceptions... [ OK ]
Setting up sudo... [ OK ]
Setting up groups... [ OK ]
Setting up users... [ OK ]
Executing init hooks... [ OK ]
Container Setup Complete!
dario@paperino:~>
22. Distrobox
Then enter:
dario@Wayrath:~> distrobox enter paperino
Container paperino is not running.
Starting container paperino
run this command to follow along:
podman logs -f paperino
Starting container... [ OK ]
Installing basic packages... [ OK ]
Setting up read-only mounts... [ OK ]
Setting up read-write mounts... [ OK ]
Setting up host's sockets integration... [ OK ]
Integrating host's themes, icons, fonts...[ OK ]
Setting up package manager exceptions... [ OK ]
Setting up sudo... [ OK ]
Setting up groups... [ OK ]
Setting up users... [ OK ]
Executing init hooks... [ OK ]
Container Setup Complete!
dario@paperino:~>
NB: This phase takes (quite!) a while.
But only the first time!
23. Distrobox
Dedicated managing interface:
dario@Wayrath:~> distrobox list # list only the distrobox containers
dario@Wayrath:~> distrobox stop paperino # stop the distrobox container
dario@Wayrath:~> distrobox rm paperino # remove the distrobox container
dario@Wayrath:~>
dario@Wayrath:~> distrobox-create --help
dario@Wayrath:~> distrobox-enter --help
dario@Wayrath:~> distrobox-list --help
dario@Wayrath:~> distrobox-stop --help
dario@Wayrath:~> distrobox-rm --help
Rootful distroboxes:
dario@Wayrath:~> distrobox create --root rockerduck
dario@Wayrath:~> distrobox enter --root rockerduck
dario@Wayrath:~> distrobox list --root
dario@Wayrath:~> distrobox stop --root rockerduck
dario@Wayrath:~> distrobox rm --root rockerduck
24. Did I Say Images ?
So, can toolbox / distrobox be used to run, e.g.:
● Tumbleweed containers on Tumbleweed or MicroOS
● Tumbleweed containers on Leap
● Leap containers on Tumbleweed
● Fedora containers on Leap
● Arch containers on MicroOS
● Ubuntu containers on Tumbleweed
● My custom image container on MicroOS
● Debian containers on Leap
● … … …
25. Did I Say Images ?
Toolbox, TL;DR: <<Ahem… Well…>>
● If the image has sudo preinstalled, should kind of work
○ For zypper, dnf & apt base OSes, we try some
automatic detection/fixup. But still…
● Expect some trivial (but annoying) issues, especially
on !openSUSE images
● ⇒ This was never (and will probably never be) the
goal of the project
26. Did I Say Images ?
Distrobox, TL;DR: <<You bet!>>
● Lots of images of lots of distros explicitly
○ Supported
○ Tested
○ Tweaked to work well
● Works with out-of-the-box images
○ No special requirements (no sudo, ecc)
○ Distrobox will fix them up itself
⇒ This was one of the main goals of the project
⇒ Check the compatibility matrix
27. That’s Another Use Case!
The environment/OS in the container can be
different from the host!
● Run apps available only in other distros
● Run new apps in old (“stable”?) distros
● Development and/or packaging for any
distro
⇒ Distrobox
28. Custom Images
Build your own one, e.g., following:
● Toolbox:
○ The only was for smoothening some rough edges
(see later)
● Distrobox:
○ Possible (of course!)
○ Itʼs also possible to use the default, and do some
customization “on-the-fly”, during create:
■ See: --pre-init-hooks, --init-hooks
■ distrobox-create official documentation
29. rootless, rootful, rootwhat?
Podman supports rootless mode!
$ toolbox enter # or distrobox enter
$> whoami # I am dario inside the container, just like outside
dario
$> pwd
/home/dario
$>
$> sudo su # I’m becoming root inside the container. I can install
#> # stuff, etc, but I can’t, e.g., touch files that are
#> # owned by root on the host!
#>
#> cat /proc/self/uid_map
0 1 1000
1000 0 1
1001 1001 64536
#>
#> exit # back to dario in the container
$> exit
$ # back to dario on the host
30. rootless, rootful, rootwhat?
Podman supports rootless mode!
$ toolbox enter -r # or distrobox enter --root
$> whoami # I am dario inside the container, just like outside. But...
dario
$> pwd
/home/dario
$>
$> sudo su # ... If I become root in the there, that maps to root
#> # on the host! And since large part of the host is accessible
#> # inside the container, well, WATCH YOUR STEPS!
#>
#> cat /proc/self/uid_map
0 0 4294967295
#>
#> exit # back to dario in the container
$> exit
$ # back to dario on the host
Docker is more limited (==> Simpler)
● Always run in this mode (as docker daemon runs as root)
● So, always watch your steps!
32. Let’s Not Always Run Rootless
E.g., troubleshooting:
$ toolbox enter --root
$> sudo su
#> zypper install nmap
#> nmap -sS 192.168.0.2
#> exit
Needs “root on host” to work
33. Let’s Not Always Run Rootless
E.g., development (building OBS packages
locally)
$ distrobox enter --root
$> osc build --vm-type=kvm
Needs “root on host” to work (for now)
34. GUI Apps
● Containers “see” $DISPLAY, D-BUS sessions, etc.
● Toolbox, some rough edges (at least with default
images):
sudo zypper in gedit && gedit ⇒ not nice
sudo zypper in --recommends gedit && gedit ⇒ ok
● Distrobox:
sudo zypper in gedit && gedit ⇒ just works
35. 3D GUI Apps
How do you fancy NVIDIAʼs kmp-s in a container? :-O
Well… it works:
dario@Wayrath:~> distrobox enter paperino
dario@paperino:~> zypper addrepo --refresh https://do[...]se/tumbleweed NVIDIA
dario@paperino:~> sudo zypper in nvidia-gfxG06-kmp-default nvidia-glG06
x11-video-nvidiaG06
dario@paperino:~> sudo zypper in kernelshark
dario@paperino:~> kernelshark
36. Host Apps
E.g., GNOME Terminal
● You can make distrobox (or toolbox)be what runs in
your terminal tabs
● E.g., GNOME Builder (flatpak)
37. Host Apps
E.g., GNOME Terminal
● You can make distrobox (or toolbox)be what runs in
your terminal tabs
● E.g., GNOME Builder (flatpak)
40. Distrobox goodies
Run host commands from inside the container:
dario@tw-test:~> sudo zypper install flatpak-spawn
dario@tw-test:~>
dario@tw-test:~> podman
bash: podman: command not found
dario@tw-test:~> distrobox-host-exec sudo podman ps
CONTAINER ID COMMAND STATUS NAMES
9c2222ee827e sleep +Inf Up 24 hours ago work
2cb78734615e /usr/bin/entrypoi... Up 2 hours ago libvirt-tw
dario@tw-test:~>
dario@tw-test:~> flatpak
bash: flatpak: command not found
dario@tw-test:~> distrobox-host-exec flatpak search PrusaSlicer
Name Description Application ID Version Branch Remotes
PrusaSlicer Get perfect 3D prints! com.prusa3d.PrusaSlicer 2.4.2 stable flathub
→ Toolbox: works there as well, by using flatpak-spawn manually
41. How Many Toolbox Is Too
Many Toolbox-es ?
10-ths of [tool|distro]box-es? (E.g., one for
each project/workload/app)
● Very fine grained control
● Managing can be tricky
(Think about updating all of them!)
42. How Many Toolbox Is Too
Many Toolbox-es ?
Only 1 [tool|distro]box to rule them all?
● Easy to manage (~= like an host)
● Can become huge, and maybe messy?
● Rootful or rootless?
43. How Many Toolbox Is Too
Many Toolbox-es ?
You have to find your way!
Mine:
● MicroOS Desktop
● 1 general purpose, Tumbleweed, rootless Distrobox, inside
which “I live”
● Some apps installed there and exported (e.g., virt-manager)
● rootless/rootful Toolbox for quick and/or special purpose
checks or activities
● Host troubleshooting that needs root
● OBS local build with osc
44. Summary
If you are on an immutable OS, you probably
know toolbox and/or distrobox:
● Come and tell us what you think about them
(in particular, on openSUSE)
Even if you are not in an immutable OS:
● Give them a try… You may never look back!