{"id":17094311,"url":"https://github.com/iconoeugen/docker-fedora-dev","last_synced_at":"2026-04-18T06:36:20.555Z","repository":{"id":151239962,"uuid":"64943325","full_name":"iconoeugen/docker-fedora-dev","owner":"iconoeugen","description":null,"archived":false,"fork":false,"pushed_at":"2019-09-10T09:32:58.000Z","size":22,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-23T16:45:30.670Z","etag":null,"topics":["development","development-environment","development-tools","docker","docker-container","environment","fedora"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iconoeugen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":"support/dev","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-04T14:54:30.000Z","updated_at":"2019-09-10T09:33:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"2504da68-4b0b-4df0-b514-79f94ac0f5e8","html_url":"https://github.com/iconoeugen/docker-fedora-dev","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/iconoeugen/docker-fedora-dev","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iconoeugen%2Fdocker-fedora-dev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iconoeugen%2Fdocker-fedora-dev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iconoeugen%2Fdocker-fedora-dev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iconoeugen%2Fdocker-fedora-dev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iconoeugen","download_url":"https://codeload.github.com/iconoeugen/docker-fedora-dev/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iconoeugen%2Fdocker-fedora-dev/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31959881,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["development","development-environment","development-tools","docker","docker-container","environment","fedora"],"created_at":"2024-10-14T14:22:32.775Z","updated_at":"2026-04-18T06:36:20.536Z","avatar_url":"https://github.com/iconoeugen.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# docker-fedora-dev\n\nDevelopment environment based on Fedora in Docker container.\n\n## Requirements\n\n* Docker 1.9+\n* An X11 socker (if GUI is used)\n\n## Quickstart\n\n### Making data persist between sessions\n\nThe data is usually persisted in the home directory of an user, so if you want to persist the data for a later session you have to share it with your host.\nThe home directory `/home/default` inside the container is mapped to the directory `.home` that is stored in the working directory.\n\nFor example for the working directory `~/work` that caches the container home directory in `~/work/.home`:\n\n``` bash\nmkdir -p ~/work\ncd ~/work\nmkdir -p .home\n```\n\nthe docker run command will look like:\n\n``` bash\ndocker run -it --rm --net=host \\\n    -e USER=$(id -u -n) -e GROUP=$(id -g -n) -u \"$(id -u):$(id -g)\" \\\n    -v $PWD:/workspace \\\n    -v $PWD/.home:/home/default \\\n    -v ~/.ssh:/home/default/.ssh \\\n    -e DISPLAY=${DISPLAY} -v ~/.Xauthority:/home/default/.Xauthority \\\n    -v /dev/shm:/dev/shm \\\n    iconoeugen/fedora-dev /bin/bash\n```\n\n### bash-it\n\nThe development environment includes the [bash-it](https://github.com/Bash-it/bash-it/) framework. To configure the appearance you can provide\nthe following environment to the docker container:\n\n- **BASH_IT_ENABLE**: Set this to `false` to disable or to `true` to enable the bash-it framework (Defaults: **true**)\n- **BASH_IT**: Path to the bash it configuration (Defauts: **/opt/bash-it**)\n- **BASH_IT_THEME**: Lock and Load a custom theme file (Defaults: **standard**)\n- **SCM_CHECK**: Set this to `false` to turn off or `true` the version control status checking within the prompt for all themes (Defaults: **true**)\n- **DEBUG**: Start entrypoint script using `set -x` flag\n\n## Support tools\n\nFor an easier use of docker images for developemnt environment, you can just add the [dev](support/dev) script to your execution path (environment `PATH`) and start using it.\n\n```\n$ dev -h\nDevelopment environment in docker containers\nSynopsys:\n  dev \u003caction\u003e [-h] [-u \u003cuser\u003e] [-d \u003cworking_directory\u003e] [-e \u003ckey=value\u003e]  \u003cimage\u003e [\u003ccommands\u003e]\n\nArguments:\n  \u003caction\u003e : Action to be executed:\n    run     : run a new container instance.\n    exec    : execute \u003ccommands\u003e in running instance.\n    ps      : process status for running instances.\n  \u003cimage\u003e   : Docker image name or id.\n\nOptions:\n  -d \u003cworking_dir\u003e : Working directory that will be mounted in the development container under '/workspace'.\n  -e \u003ckey\u003e[=\u003cvalue\u003e] : environments parameters which should be passed to the docker instance.\n  -u \u003cuser\u003e : Username.\n  -p \u003cpublish_port\u003e  : Publish a container’s port(s) to the host passed on to docker command.\n  -P                 : Automatically map any network port passed on to docker command.\n  -h        : This help message.\n\nENVIRONMENT:\n  DEV_DOCKER_OPTS: Options that are passed directly to the docker 'run' command. i.e. DEV_DOCKER_OPT='-e BASH_IT_THEME=modern -v /tmp:/tmp'\\n\"\n```\n\n### Usage example\n\nStart a container and mount the current working directory:\n\n```\n$ id\nuid=2376(dev) gid=2376(dev) groups=2376(dev),10(wheel),977(dockerroot),2377(docker)\n\n$ dev run iconoeugen/fedora-dev\nActivating nss_wrapper for dev:dev\n\nbash-4.3$ id\nuid=2376(dev) gid=2376(dev) groups=2376(dev)\n\nbash-4.3$ pwd\n/workspace\n\nbash-4.3$ ls -l\ntotal 20\n-rw-r--r--. 1 dev dev  556 Aug  4 14:12 Dockerfile\n-rw-rw-r--. 1 dev dev  187 Aug  4 07:22 Makefile\n-rw-r--r--. 1 dev dev 1624 Aug  4 18:37 README.md\n-rwxr--r--. 1 dev dev  591 Aug  4 14:11 entrypoint.sh\n-rw-r--r--. 1 dev dev  185 Aug  4 14:03 nss_wrapper.sh\ndrwxrwxr-x. 2 dev dev   16 Aug  4 18:33 support\nbash-4.3$\n```\n\nExecute command in running container:\n\n```\n$ pwd\n/home/dev\n\n$ dev exec iconoeugen/fedora-dev\nNo container found for image 'iconoeugen/fedora-dev' running in working directory '/home/dev'.\n\n$ dev -d /home/dev/github/iconoeugen/docker-fedora-dev exec iconoeugen/fedora-dev\nbash-4.3$ exit\n\n$ cd /home/dev/github/iconoeugen/docker-fedora-dev\n\n$ dev exec iconoeugen/fedora-dev\nbash-4.3$\n```\n\nList containers:\n\n```\n$ pwd\n/home/dev\n\n$ dev ps iconoeugen/fedora-dev\nNo container found for image 'iconoeugen/fedora-dev' running in working directory '/home/vlad'.\n\n$ dev -d /home/dev/github/iconoeugen/docker-fedora-dev ps iconoeugen/fedora-dev\nCONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS               NAMES\n969c9d041e31        iconoeugen/fedora-dev   \"/entrypoint.sh /bin/\"   7 minutes ago       Up 7 minutes                            evil_bohr\n\n$ cd /home/dev/github/iconoeugen/docker-fedora-dev\n\n$ dev ps iconoeugen/fedora-dev\nCONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS               NAMES\n969c9d041e31        iconoeugen/fedora-dev   \"/entrypoint.sh /bin/\"   8 minutes ago       Up 8 minutes                            evil_bohr\n```\n\nEnvironment configuration:\n\n```\n$ unset DEV_DOCKER_OPTIONS\n$ dev run iconoeugen/fedora-dev\nActivating nss_wrapper for dev:dev\n[dev@localhost workspace]$ exit\n\n$ export DEV_DOCKER_OPTIONS='-e BASH_IT_THEME=modern'\n$ dev run iconoeugen/fedora-dev\nActivating nss_wrapper for dev:dev\n┌─[±][master ?:2 ✗][workspace][]\n└─▪ exit\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficonoeugen%2Fdocker-fedora-dev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ficonoeugen%2Fdocker-fedora-dev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficonoeugen%2Fdocker-fedora-dev/lists"}