docker-stacks
dive
docker-stacks | dive | |
---|---|---|
13 | 91 | |
7,762 | 43,709 | |
0.5% | - | |
9.5 | 6.6 | |
about 11 hours ago | 4 days ago | |
Python | Go | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
docker-stacks
-
Linux or Windows for coding??
See https://github.com/jupyter/docker-stacks
-
Connecting IPython notebook to spark master running in different machines
I have an IPython notebook running in a docker container in Google Container Engine, the container is based on this image jupyter/all-spark-notebook
- Looking for a solution to sandbox python remotely.
-
A short tutorial on running Spark with Jupyter using Docker
Yes sir :) love the jupyter docker stacks: https://github.com/jupyter/docker-stacks
-
(RANT) I think I'll die trying to setup and run Spark with Python in my local environment
I use an image that allows me to run spark on jupyter notebooks and use files from my local machine to test code. Here is a good one https://github.com/jupyter/docker-stacks/tree/main/pyspark-notebook
-
How we made Jupyter Docker Stacks multi-arch
Today I will tell you a story behind making Jupyter Docker Stacks able to build aarch64 images without many (almost any) compromises. If you want to read how it is implemented now, you can skip to the last section of this post.
-
3.51 GB Bloated Image for Coqui TTS Server
FROM ubuntu:20.04 LABEL maintainer="PhysicsReplicatorAI " ARG NB_USER="coqui_user" \ NB_UID="1000" \ NB_GID="100" USER root ENV DEBIAN_FRONTEND=noninteractive \ TERM=xterm \ TZ=America/New_York # -------------------------------------------------------------------------------- # Update/Install the basics # -------------------------------------------------------------------------------- RUN apt-get update -y && \ apt-get install -y --no-install-recommends \ sudo locales apt-utils g++ libsndfile1-dev && \ apt-get -y clean autoclean && \ apt-get -y autoremove --purge && \ echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \ locale-gen # -------------------------------------------------------------------------------- # Configure environment # -------------------------------------------------------------------------------- ENV SHELL=/bin/bash \ NB_USER="${NB_USER}" \ NB_UID=${NB_UID} \ NB_GID=${NB_GID} \ LC_ALL=en_US.UTF-8 \ LANG=en_US.UTF-8 \ LANGUAGE=en_US.UTF-8 \ PATH="/home/${NB_USER}/.local/bin:${PATH}" \ HOME="/home/${NB_USER}" # -------------------------------------------------------------------------------- # Create coqui_user # User creation method/pattern obtained from: # https://github.com/jupyter/docker-stacks/blob/master/base-notebook/Dockerfile # -------------------------------------------------------------------------------- COPY fix-permissions /usr/local/bin/fix-permissions RUN chmod a+rx /usr/local/bin/fix-permissions && \ sed -i 's/^#force_color_prompt=yes/force_color_prompt=yes/' /etc/skel/.bashrc && \ echo "auth requisite pam_deny.so" >> /etc/pam.d/su && \ sed -i.bak -e 's/^%admin/#%admin/' /etc/sudoers && \ sed -i.bak -e 's/^%sudo/#%sudo/' /etc/sudoers && \ useradd -l -m -s /bin/bash -N -u "${NB_UID}" "${NB_USER}" && \ chmod g+w /etc/passwd && \ fix-permissions "${HOME}" && \ cd "${HOME}" && \ apt-get install -y --no-install-recommends python3-dev python3-pip && \ apt-get -y autoclean && \ apt-get -y autoremove --purge && \ apt-get -y purge $(dpkg --get-selections | grep deinstall | sed s/deinstall//g) && \ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* # -------------------------------------------------------------------------------- # Install TTS # -------------------------------------------------------------------------------- USER ${NB_UID} RUN fix-permissions "${HOME}" && \ python3 -m pip install --no-cache-dir --upgrade TTS && \ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* EXPOSE 5002 ENTRYPOINT ["tts-server"]
- New to dockerfiles and was wondering if somebody can help with user switching?
-
How do I create a Docker image building on another image?
Pretty much what title says. I want to build an image on top of the scy-py image with my preferred libraries such as NLTK, spaCy and stanza. Is there a way to do that?
-
Docker + Python Environment Management
The disadvantages are that everytime I rebuild the entire docker image I have to pray that all the dependencies that I did not list did not change, because if they did, the build fails with a cryptic error message. Also if the list of pip installs gets too long, pip is no longer able to resolve all the dependencies and then the docker image does not build either. So actually not having a requirements.txt might be a disadvantage. Further, I do not like the fact that I have both Miniconda and "regular Python" in one file. This happened, because this Dockerfile evolved from one of the Jupyter Notebook Dockerfiles. My development environment is Jupyter and I wanted my production environment as close as possible to my development environment.
dive
-
Show HN: Docker-phobia: Analyze Docker image size with a treemap
Cool, gonna try this soon. Would be great to use in combination with Dive (https://github.com/wagoodman/dive)
-
Mastering Docker Image Optimization: 6 Key Strategies for building Lighter, Faster, and Safer images
Dive is an open-source tool that allows you to explore the various layers of a Docker image. It shows you the content of each layer and helps you identify voluminous or unnecessary parts.
- Optimisation des images Docker: 6 Stratégies clés pour des images plus légeres et plus performantes
-
I reduced the size of my Docker image by 40% – Dockerizing shell scripts
Dive is a great tool for debugging this. I like image reduction work just because it gives me a chance to play with Dive: https://github.com/wagoodman/dive
One easy low hanging fruit I see a LOT for ballooning image sizes is people including the kitchen sink SDK/CLI for their cloud provider (like AWS or GCP), when they really only need 1/100 of that. The full versions of both of these tools are several hundred mb each
- Dive: A tool for exploring a Docker image, layer contents and more
- Dive – A tool for exploring each layer in a Docker image
- FLaNK Stack Weekly for 12 September 2023
-
Dive Into Docker part 4: Inspecting Docker Image
This post is going to be shorter. I'd like to highlight a tool that I really enjoy working with called "Dive" It is an essential tool when working to build and optimize docker containers.
-
Top 10 CLI Tools for DevOps Teams
Whether you work with Docker regularly or even create your own Docker containers, Dive is a great tool for streamlining image sizes, potentially helping you save storage costs and speed up deployments.
- Dive – exploring a Docker image, layer contents, and shrinking a image size
What are some alternatives?
the-littlest-jupyterhub - Simple JupyterHub distribution for 1-100 users on a single server
skopeo - Work with remote images registries - retrieving information, images, signing content
nbgrader - A system for assigning and grading notebooks
Lean and Mean Docker containers - Slim(toolkit): Don't change anything in your container image and minify it by up to 30x (and for compiled languages even more) making it secure too! (free and open source)
nbmake - 📝 Pytest plugin for testing notebooks
buildkit - concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit
pangeo-binder - Pangeo + Binder (dev repo for a binder/pangeo fusion concept)
lnav - Log file navigator
zero-to-jupyterhub-k8s - Helm Chart & Documentation for deploying JupyterHub on Kubernetes
Whaler - Program to reverse Docker images into Dockerfiles
eaf-jupyter - Jupyter client
distroless - 🥑 Language focused docker images, minus the operating system.