{"id":20210234,"url":"https://github.com/lancelet/docker","last_synced_at":"2026-02-13T19:32:22.211Z","repository":{"id":94966972,"uuid":"56189711","full_name":"lancelet/docker","owner":"lancelet","description":"Docker images","archived":false,"fork":false,"pushed_at":"2016-08-30T05:56:22.000Z","size":46,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-23T15:23:00.262Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"M4","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lancelet.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":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-04-13T22:16:17.000Z","updated_at":"2016-05-15T23:07:44.000Z","dependencies_parsed_at":"2023-06-11T08:45:42.933Z","dependency_job_id":null,"html_url":"https://github.com/lancelet/docker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/lancelet/docker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lancelet%2Fdocker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lancelet%2Fdocker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lancelet%2Fdocker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lancelet%2Fdocker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lancelet","download_url":"https://codeload.github.com/lancelet/docker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lancelet%2Fdocker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29415602,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T06:24:03.484Z","status":"ssl_error","status_checked_at":"2026-02-13T06:23:12.830Z","response_time":78,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":[],"created_at":"2024-11-14T05:46:57.443Z","updated_at":"2026-02-13T19:32:22.192Z","avatar_url":"https://github.com/lancelet.png","language":"M4","funding_links":[],"categories":[],"sub_categories":[],"readme":"Docker\n======\n\n[![Build\nStatus](https://travis-ci.org/lancelet/docker.svg?branch=master)](https://travis-ci.org/lancelet/docker)\n\n\u003e Docker images\n\nDocker images for useful purposes.\n\n### What is this monstrosity?\n\nThe purpose of this repository and its docker images is to provide a build\nenvironment for a specific Haskell project (not mentioned here). The images may\nor may not be useful to anyone else.\n\nThis setup is currently working around the following issues:\n  1. A job limit of 50 minutes on travis.org.\n  2. Lack of caching in Haskell `stack` for `extra-deps` dependencies in a\n     `stack.yaml` file.\n\nHaskell `stack` doesn't globally cache `extra-deps` dependencies that are\ndeclared in a `stack.yaml` file. Instead, these are stored in a\nproject-specific cache. To get around this, dummy `.cabal` and `stack.yaml`\nfiles are provided and a dummy project is created inside the Docker images at\n`/opt/stack`. By using identical `extra-deps` and libraries, a build\nenvironment can be created at this location which a later `stack` build can\nre-use.\n\nTo combat the 50 minute limit on jobs at travis.org, the Docker build is split\ninto multiple images:\n  - `centos-lts-a`\n  - `centos-lts-b`\n  - `centos-lts-c`\n  - `centos-lts-b`\n\nThis is straightforward, but annoying. One annoying part of this setup is\nkeeping the version numbers of the multiple Docker images in sync. To achieve\nthis, the M4 macro processor is used to substitute version numbers across the\nDockerfiles.\n\n### Notes\n\nIt's still necessary to switch to an explicit `stack` project directory (ie.\n`/opt/stack` in this case) because of this stack issue:\nhttps://github.com/commercialhaskell/stack/issues/1731\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flancelet%2Fdocker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flancelet%2Fdocker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flancelet%2Fdocker/lists"}