{"id":16247761,"url":"https://github.com/mbdevpl/docker-usable-ubuntu","last_synced_at":"2026-04-30T15:31:39.466Z","repository":{"id":143019858,"uuid":"113262413","full_name":"mbdevpl/docker-usable-ubuntu","owner":"mbdevpl","description":null,"archived":false,"fork":false,"pushed_at":"2021-01-14T05:53:49.000Z","size":57,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-08T12:17:02.714Z","etag":null,"topics":["docker","environment","ubuntu"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/r/mbdevpl/usable-ubuntu","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mbdevpl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-12-06T03:14:30.000Z","updated_at":"2021-01-14T05:18:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"e49f862b-a466-4510-a5f0-d8c032f83ac1","html_url":"https://github.com/mbdevpl/docker-usable-ubuntu","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mbdevpl/docker-usable-ubuntu","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbdevpl%2Fdocker-usable-ubuntu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbdevpl%2Fdocker-usable-ubuntu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbdevpl%2Fdocker-usable-ubuntu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbdevpl%2Fdocker-usable-ubuntu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mbdevpl","download_url":"https://codeload.github.com/mbdevpl/docker-usable-ubuntu/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbdevpl%2Fdocker-usable-ubuntu/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32469344,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","environment","ubuntu"],"created_at":"2024-10-10T14:38:30.190Z","updated_at":"2026-04-30T15:31:39.451Z","avatar_url":"https://github.com/mbdevpl.png","language":"Shell","readme":"# Usable Ubuntu\n\nUbuntu with several essential tools pre-installed.\n\nMotivation behind it is need for a convenient debugging/development image,\nespecially for projects implemented in more than one programming language.\nThe image size is a priority too, but the highest priority is ease of development/debugging in it.\n\n\n## Tags\n\nCurrently maintained Docker tags (with corresponding Ubuntu versions):\n\n* [latest](https://github.com/mbdevpl/docker-usable-ubuntu/tree/latest) is based on `ubuntu:latest` (currently 20.04)\n* [20.04](https://github.com/mbdevpl/docker-usable-ubuntu/tree/20.04) is based on `ubuntu:20.04`\n* [20.04-cuda](https://github.com/mbdevpl/docker-usable-ubuntu/tree/20.04-cuda) is based on `nvidia/cuda:11.1-devel-ubuntu20.04`\n* [18.04](https://github.com/mbdevpl/docker-usable-ubuntu/tree/18.04) is based on `ubuntu:18.04`\n* [18.04-cuda](https://github.com/mbdevpl/docker-usable-ubuntu/tree/18.04-cuda) is based on `nvidia/cuda:10.2-devel-ubuntu18.04`\n\nTags that are no longer maintained:\n\n* [19.04](https://github.com/mbdevpl/docker-usable-ubuntu/tree/19.04)\n* [18.10](https://github.com/mbdevpl/docker-usable-ubuntu/tree/18.10)\n* [17.10](https://github.com/mbdevpl/docker-usable-ubuntu/tree/17.10)\n* [16.04](https://github.com/mbdevpl/docker-usable-ubuntu/tree/16.04)\n\nSee the [Docker Hub repository](https://hub.docker.com/r/mbdevpl/usable-ubuntu/) for details.\n\n\n## Features\n\nLooking through the\n[latest build logs](https://cloud.docker.com/repository/docker/mbdevpl/usable-ubuntu/builds)\nreveals details about all built libraries and their exact versions.\nViewing the logs, however, requires Docker Hub ID.\n\nPlease see below for the high-level overview of the features.\n\nContainer has two users:\n\n* default user `user` with sudo privileges and no password -- use `sudo su` to become root.\n* `root` -- use `su - user -c something` to execute something as `user`.\n\n\n### Software development\n\nCurrently supported programming languages:\n\n* C, C++ (GCC 8, LLVM 10)\n* Fortran (GCC 8)\n* Python 3 (CPython 3.6 on 18.04, CPython 3.8 on 20.04)\n* Java (Open JDK 11)\n\nNot installed by default, but also easily available:\n\n* Ruby -- run `sudo /opt/usable-ubuntu/init_ruby.sh` to install\n* LaTeX (texlive 2018) -- run `/opt/usable-ubuntu/init_texlive.sh` to install\n\n\n### Python packages\n\nPython comes with many useful packages pre-installed for convenience.\n\nThe feature categories include but aren't limited to:\n\n* debugging (ipdb)\n* code analysis (coverage, mypy, pylint, ...)\n* parsing, compilation and code generation (numba, Cython, astunparse, typed_ast, ...)\n* interactive interfaces (ipython, jupyter, ...)\n* numerics and data science (numpy, scipy, pandas, matplotlib, ...)\n* machine learning (scikit-learn, chainer, keras)\n\n\n### Tools\n\nAdditionally, common tools and libraries including but not limited to:\n\n* screen\n* curl\n* wget\n* git\n* environment modules (`module` command)\n* vim\n* nano\n* cmake\n* doxygen\n\n\n### Extensibility\n\nImage is built in a way as to help to build on top of it.\n\nIt can also be stripped out of some features that are enabled by default,\nor have some features that are disabled by default, enabled.\n\n\n#### Disabling and enabling features\n\nSimply comment out a line in the `Dockerfile` which runs a script with\na given feature to disable it, or uncomment it to enable a feature.\n\nCustomisable features:\n\n* more Ubuntu apps `init_ubuntu_more.sh`\n* GCC: `init_gcc.sh`\n* LLVM: `init_llvm.sh`\n* CPython: `init_python.sh`\n* JDK: `init_java.sh`\n* Ruby: `init_ruby.sh`\n* Texlive `init_texlive.sh`\n* common Python packages: `init_python_packages.sh`\n* more Python packages: `init_python_packages_extra.sh`\n\n\n#### Changing apt mirror\n\nIt's controlled via `APT_MIRROR` build argument, `us` by default.\n\nChange is made by running `/opt/usable/ubuntu/refresh_apt_mirror.sh` in docker build.\n\nUsage example:\n\n```\nFROM mbdevpl/usable-ubuntu:latest\n\nARG APT_MIRROR=jp\n\nUSER root\n\nRUN /opt/usable/ubuntu/refresh_apt_mirror.sh\n\n...\n```\n\n\n#### Changing timezone\n\nIt's controlled via `TIMEZONE` build argument, `UTC` by default.\n\nChange is made by running `/opt/usable/ubuntu/refresh_timezone.sh` in docker build.\n\n```\nFROM mbdevpl/usable-ubuntu:latest\n\nARG TIMEZONE=Asia/Tokyo\n\nUSER root\n\nRUN /opt/usable/ubuntu/refresh_timezone.sh\n\n...\n```\n\n\n## Contributing\n\nContributions of any kind are welcome.\nPlease open issues and/or submit pull requests\nin the [GitHub repository](https://github.com/mbdevpl/docker-usable-ubuntu) of the project\nif you see some problem with the images and/or wish something changed.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbdevpl%2Fdocker-usable-ubuntu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmbdevpl%2Fdocker-usable-ubuntu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbdevpl%2Fdocker-usable-ubuntu/lists"}