Code Monkey home page Code Monkey logo

fedora-atomic-container's Introduction

README

Operating System

Pre-requisite packages

Package Source URL
toolbx Included https://containertoolbx.org/
Podman Desktop Software Center https://podman-desktop.io/

Create toolbox

  • Use included toolbx to create a container, by default uses the same OS as host - this is what I do below:
toolbx create github-dev

Enter the container

toolbx enter github-dev
  • The terminal will change to reflect entering the container, else you can verify the container is initialized in Podman Desktop
  • If using VS Code, remotely connect to the container - any conda environments you installed in the host are available in /var/home/atomic/PATH/TO/CONDA, /var/home/atomic is a mirror of $HOME on the host system
  • I find this method convenient for me, I spin up a venv in my working directory and pip install other requirements there
  • Drop a .gitignore to avoid uploading everything to Github

Installing software inside container

  • Once inside the container, installation procedes at the package level so familiar tools like dnf work
  • Like Docker, anything installed here is only in the container
sudo dnf group install "Development Tools"
sudo dnf install gcc-gfortran
sudo dnf install lapack-devel-3.11.0-5.fc39.x86_64 openblas-devel-0.3.21-6.fc39.x86_64

How I want to use containerization

  • Jump between dev environments with clashing dependencies with the same ease as I do just shifting focus from one project to another
  • Isolate conda/pip and system level packages to the development space while making no changes to the host (increased stability)
  • Easily document and save environments to use elsewhere (e.g., HPC, Google Cloud, Azure, AWS)

Important note

  • This is my first week with Atomic after 15 years of a more traditional Linux experience, still figuring things out.
  • Have fun learning!

fedora-atomic-container's People

Contributors

coffee-on-tap avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.