⚠️ This repository has been deprecated and archived in favor of the official support in RedwoodJS. Thanks to everyone that contributed to this repository, and to everyone that worked on bringing offical support.
This is a collaboration repository to consolidate efforts on making sweet Docker implementations for RedwoodJS. Discussion on Dockerize RedwoodJS and Define official Docker images. This repository is currently up to date with Redwood version 3.8.0
.
Name | Description | Workflow |
---|---|---|
jeliasson-nginx | A production tested implementation that builds api and web seperately. | |
standal-ce-nginx | An implementation built for a deployment to IBM's Code Engine, with its best practices built in. | |
standal-cli-both | Builds and serves both sides from a single image, using Redwood's CLI. | |
pi0neerpat-packages | Similar to jeliasson-nginx , but supports 📦 local packages |
Meta
Name | jeliasson-nginx |
Description | A production tested implementation that builds api and web seperately. |
Workflow | |
Maintainer | Johan Eliasson |
Meta
Name | standal-ce-nginx |
Description | An implementation built for a deployment to IBM's Code Engine, with its best practices built in. |
Workflow | |
Maintainer | Ryan Lockard |
Meta
Name | standal-cli-both |
Description | Builds and serves both sides from a single image, using Redwood's CLI. |
Workflow | |
Maintainer | Ryan Lockard |
NOTE: not everything can be run here. Instead see: https://github.com/pi0neerpat/redwood-devops-example
Meta
Name | pi0neerpat-packages |
Description | Similar to jeliasson-nginx , but supports 📦 local packages |
Workflow | |
Maintainer | Patrick |
Essentialy we create various test implementations under the docker directory and create workflows to build these. Once we find a suitable approach forward, we'll discuss where the final Dockerfiles ultimately end up after a yarn rw setup docker
(or what we end up with) setup. 🚀
Add below LABEL
to bottom each Dockerfile to connect published Docker image to this repository.
### Connect image to repository
LABEL org.opencontainers.image.source=https://github.com/redwoodjs/docker
Published Docker images to GitHub Container Registry should preferably be named;
docker-<prefix>-api-dev
for api build with development as runtime env.docker-<prefix>-web-dev
for web build with development as runtime env.docker-<prefix>-both-dev
for api and web build with development as runtime env.docker-<prefix>-api-prod
for api build with production as runtime env.docker-<prefix>-web-prod
for web build with production as runtime env.docker-<prefix>-both-prod
for api and web build with production as runtime env.
e.g.
docker-jeliasson-nginx-web-dev
To keep track of the implementations effectiveness, we maintain a running average on below metrics.
- Build Size: On successful builds we display the image size in the analyse stage. In this stage we also run a dive analysis.
- Build time: Average time for 'Docker build' completion in respective workflow.
Feel free to copy and paste .github/workflows/template.yml
and we try to make out a common baseline. It should build and publish the image(s) to GitHub Container Registry (see template).