Code Monkey home page Code Monkey logo

docker-images's People

Contributors

austinshalit avatar peterjohnson avatar prateekma avatar ryanhir avatar sciencewhiz avatar thadhouse avatar virtuald avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

docker-images's Issues

Add ssh tools to Docker Images

Ran into this issue when trying to have an automated GitHub Action run Spotless formatting on a protected main branch of robot code and trying to follow this workaround to use GitHub deploy keys. In some cases, it may be preferable to use ssh authentication to do this, but this cannot be done as the current Docker images do not include 'ssh-agent'.

I was able to get around this by following the main solution listed (Made a mistake and added the bot to the 'Allow force pushes' list instead of the bypass list), but it might be useful to have this option.

Can't pull wpilib/raspbian-cross-ubuntu image from dockerhub

Description of the issue

This issue is directly related to images on docker hub (https://hub.docker.com/r/wpilib/raspbian-cross-ubuntu/)

Users can't pull the image from docker. Missing the image with tag latest
Context information (for bug reports)

Steps to reproduce the issue

  1. docker pull wpilib/raspbian-cross-ubuntu
  2. Observe the error in terminal

Observed result

The error in terminal

โ†’ docker pull wpilib/raspbian-cross-ubuntu
Using default tag: latest
Error response from daemon: manifest for wpilib/raspbian-cross-ubuntu:latest not found

Suggested solution

In each stable relase push container with the latest tag.

Proposed changes to how images are names and tagged

In the current state of how images are named, every image has the ubuntu prefix or suffix. In some cases, this would be fine, especially with software designed around just Ubuntu. But this causes issues when trying to bring in support for Debian. It would be possible to generate another set of containers with a debian prefix/suffix.

Many popular images on Docker Hub use a generic image name, and note any differing changes into the tag. Take the Grafana image for example, it will tag versions and releases with Alpine as its base, and Ubuntu bases with a -ubuntu suffix (latest, latest-ubuntu, 9.0.6, 9.0.6-ubuntu, etc.). Or the Python image, which will put the OS version in the tag name (3.9.13-buster, 3.9.13-bullseye, etc.). Along with the verbose tags, the Python images are also tagged with more generic names to make end-user usage easier (3.10.6-bullseye == 3.10-bullseye == 3-bullseye == bullseye).


I think the images in this repo should follow the Python, along with a specifier of Ubuntu or Debian. But this can also be implied by the name of the tag, as Ubuntu and Debian has never had matching version names.

Image Name Generic Tag Complex Tag
base 2023.1.1 and/or latest ubuntu, 2023.1.1-ubuntu, 2023.1.1-ubuntu-focal, 2023.1.1, 2023.1, 2023

debian, 2023.1.1-debian, 2023.1.1-debian-bullseye, 2023.1.1-debian, 2023.1-debian, 2023-debian
roborio-cross 2023.1.1 and/or latest ubuntu, 2023.1.1-ubuntu, 2023.1.1-ubuntu-focal, 2023.1.1, 2023.1, 2023

debian, 2023.1.1-debian, 2023.1.1-debian-bullseye, 2023.1.1-debian, 2023.1-debian, 2023-debian
frcvision-cross 2023.1.1 and/or latest ubuntu, 2023.1.1-ubuntu, 2023.1.1-ubuntu-focal, 2023.1.1, 2023.1, 2023

debian, 2023.1.1-debian, 2023.1.1-debian-bullseye, 2023.1.1-debian, 2023.1-debian, 2023-debian
jetson-cross 2023.1.1 and/or latest ubuntu, 2023.1.1-ubuntu, 2023.1.1-ubuntu-focal, 2023.1.1, 2023.1, 2023

debian, 2023.1.1-debian, 2023.1.1-debian-bullseye, 2023.1.1-debian, 2023.1-debian, 2023-debian
gazebo 2023.1.1 and/or latest ubuntu, 2023.1.1-ubuntu, 2023.1.1-ubuntu-focal, 2023.1.1, 2023.1, 2023

debian, 2023.1.1-debian, 2023.1.1-debian-bullseye, 2023.1.1-debian, 2023.1-debian, 2023-debian
opensdk 2023.1.1 and/or latest ubuntu, 2023.1.1-ubuntu, 2023.1.1-ubuntu-focal, 2023.1.1, 2023.1, 2023

debian, 2023.1.1-debian, 2023.1.1-debian-bullseye, 2023.1.1-debian, 2023.1-debian, 2023-debian

As you can see by the image names, I also changed the names of raspbian-cross/aarch64-cross to frcvision-cross/jetson-cross as these containers are used for very specialized targets which were not apparent until you look at the tags of the images.


Another design choice, which I do not particularly like, but would follow the design of the current system, can look like the following.

Image Name Generic Tag Complex Tag
base-ubuntu 2023.1.1 and/or latest 2023.1.1-focal, 2023.1.1, 2023.1, 2023
base-debian 2023.1.1 and/or latest 2023.1.1-bullseye, 2023.1.1, 2023.1, 2023
roborio-cross-ubuntu 2023.1.1 and/or latest 2023.1.1-focal, 2023.1.1, 2023.1, 2023
roborio-cross-debian 2023.1.1 and/or latest 2023.1.1-bullseye, 2023.1.1, 2023.1, 2023
frcvision-ubuntu 2023.1.1 and/or latest 2023.1.1-focal, 2023.1.1, 2023.1, 2023
frcvision-debian 2023.1.1 and/or latest 2023.1.1-bullseye, 2023.1.1, 2023.1, 2023
jetson-ubuntu 2023.1.1 and/or latest 2023.1.1-focal, 2023.1.1, 2023.1, 2023
jetson-debian 2023.1.1 and/or latest 2023.1.1-bullseye, 2023.1.1, 2023.1, 2023
gazebo-ubuntu 2023.1.1 and/or latest 2023.1.1-focal, 2023.1.1, 2023.1, 2023
gazebo-debian 2023.1.1 and/or latest 2023.1.1-bullseye, 2023.1.1, 2023.1, 2023
opensdk-ubuntu 2023.1.1 and/or latest 2023.1.1-focal, 2023.1.1, 2023.1, 2023
opensdk-debian 2023.1.1 and/or latest 2023.1.1-bullseye, 2023.1.1, 2023.1, 2023

Both versions allow for multiple versions from the same distro, which will bring flexibility to slowly roll out the migration from one LTS release to another.

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.