{"id":19232276,"url":"https://github.com/flexstack/dockerfile","last_synced_at":"2025-02-23T11:28:07.928Z","repository":{"id":241011465,"uuid":"776268143","full_name":"flexstack/Dockerfile","owner":"flexstack","description":"A collection of example Dockerfiles for different programming languages and frameworks","archived":false,"fork":false,"pushed_at":"2024-05-27T21:04:03.000Z","size":41,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-05T00:18:41.328Z","etag":null,"topics":["astro-dockerfile","bun-dockerfile","docker","docker-examples","dockerfile","dockerfile-examples","golang-dockerfile","nextjs-dockerfile","nodejs-dockerfile","react-dockerfile","vite-dockerfile"],"latest_commit_sha":null,"homepage":"https://flexstack.com/docs/languages-and-frameworks/dockerfile","language":"Dockerfile","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/flexstack.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2024-03-23T03:22:50.000Z","updated_at":"2024-05-27T21:04:06.000Z","dependencies_parsed_at":"2024-05-27T18:26:37.678Z","dependency_job_id":null,"html_url":"https://github.com/flexstack/Dockerfile","commit_stats":null,"previous_names":["flexstack/dockerfile"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flexstack%2FDockerfile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flexstack%2FDockerfile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flexstack%2FDockerfile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flexstack%2FDockerfile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flexstack","download_url":"https://codeload.github.com/flexstack/Dockerfile/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240307736,"owners_count":19780872,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["astro-dockerfile","bun-dockerfile","docker","docker-examples","dockerfile","dockerfile-examples","golang-dockerfile","nextjs-dockerfile","nodejs-dockerfile","react-dockerfile","vite-dockerfile"],"created_at":"2024-11-09T16:05:50.856Z","updated_at":"2025-02-23T11:28:07.900Z","avatar_url":"https://github.com/flexstack.png","language":"Dockerfile","readme":"# Dockerfile\n\nA collection of *high quality* Dockerfiles for different programming languages and frameworks.\n\n[Check out `new-dockerfile`](https://github.com/flexstack/new-dockerfile) for a tool to generate Dockerfiles for your projects.\n\n## FlexStack ♡ Docker\n\nAt FlexStack we love the humble Dockerfile. They offer unparalleled flexibility (😉) and control, allowing you to specify \nexactly how your environment should be built, from the operating system up. This precision ensures that your applications \nrun exactly as intended, in any environment, which is critical for reliable deployments.\n\nUnfortunately, Dockerfiles can be cumbersome to write and maintain. They're often verbose, repetitive, and sometimes require a lot of \nboilerplate code. They can also be difficult to get right in terms of security, build performance, and best practices. This repository \naims to provide a collection of example Dockerfiles for different programming languages and frameworks, to help you get started with your \nown projects.\n\nWe hope you find them useful! If you have any suggestions or improvements, please feel free to open an issue or pull request.\n\n## Usage\n\nEach Dockerfile in this repository is designed to be a starting point for your own projects. They are intended to be copied and modified\nto suit your specific requirements, for example replacing build scripts and start commads. To use a Dockerfile, simply copy it into your project \ndirectory and build it using the `docker build` command.\n\nFor example, to build the `nodejs.Dockerfile`:\n\n```bash\ndocker build -t my-nodejs-app -f nodejs.Dockerfile .\n```\n\n## Languages and Frameworks\n\nThe following Dockerfiles are available in this repository:\n\n- [Bun](bun.Dockerfile) - A Bun Dockerfile with multi-stage build. We tested this with a [Bun](https://bun.sh/) \"Hello world\" server.\n- [Golang](golang.Dockerfile) - A minimal Go Dockerfile with multi-stage build that works with Go modules. We tested this in a [Fiber project](https://gofiber.io/).\n- [Next.js](nextjs.Dockerfile) - A Next.js Dockerfile with multi-stage build that works with Yarn, PNPM, Bun, or NPM package managers. We tested this in a [Next.js project](https://nextjs.org/). This Dockerfile is designed to run the Next.js server in production mode.\n- [Next.js w/ standalone output](nextjs-standalone.Dockerfile) - A Next.js Dockerfile with multi-stage build that works with Yarn, PNPM, Bun, or NPM package managers. We tested this in a [Next.js project](https://nextjs.org/). This Dockerfile is designed to build the Next.js project and served with a [`standalone` output](https://nextjs.org/docs/pages/api-reference/next-config-js/output#automatically-copying-traced-files).\n- [Node.js](nodejs.Dockerfile) - A simple Node.js Dockerfile with multi-stage build that works with Yarn, PNPM, or NPM package managers. We tested this in an [Astro project](https://docs.astro.build/en/getting-started/).\n- [React SPA](react-spa.Dockerfile) - A React single-page application Dockerfile with multi-stage build that works with Yarn, PNPM, Bun, or NPM package managers. We tested this in a [Create Vite App project w/ React Router](https://vitejs.dev/guide/#scaffolding-your-first-vite-project).\n\n## Contributing\n\nIf you have a Dockerfile that you would like to contribute, please feel free to open a pull request. We welcome contributions for any programming language or framework, as long as they follow the guidelines below:\n\n- Should be well-commented and easy to understand.\n- Should follow best practices for security (non-root user, etc.), performance (cached stages), and maintainability.\n- Should be tested and working with the latest version of the language or framework.\n- Should use multi-stage builds where appropriate.\n- Should be based on an official Docker image where possible.\n\nRead the [CONTRIBUTING.md](CONTRIBUTING.md) file for more information on how to contribute.\n\n## License\n\nThis repository is licensed under the MIT License. See the [LICENSE](LICENSE) file for more information.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflexstack%2Fdockerfile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflexstack%2Fdockerfile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflexstack%2Fdockerfile/lists"}