Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Official docker image for CI #25

Closed
jimafisk opened this issue May 15, 2020 · 3 comments · Fixed by #39
Closed

Official docker image for CI #25

jimafisk opened this issue May 15, 2020 · 3 comments · Fixed by #39

Comments

@jimafisk
Copy link
Member

https://hub.docker.com/orgs/plentico

Should use lightweight container based on Alpine for quick CI builds:

Alpine Linux is... designed for security, simplicity, and resource efficiency... Because of its small size, it is commonly used in containers providing quick boot-up times.

Ideally it will only have the Plenti binary on it (once node dependency is removed per #3)

@jimafisk
Copy link
Member Author

Using scratch instead of alpine will produce a smaller image: https://medium.com/@chemidy/create-the-smallest-and-secured-golang-docker-image-based-on-scratch-4752223b7324

We'll use goreleaser to automatically push to dockerhub: https://goreleaser.com/customization/docker/

Every new release will get it's own image tagged with that version, and the :latest tag will get updated: https://goreleaser.com/customization/docker/#keeping-docker-images-updated-for-current-major

The image will not have npm on it by default, which will work in the future for standard builds. If folks have extended the node_modules, or changed the versions of anything included with plenti core, this will be reflected in package.lock, but you will need to add a build step to your CI manually to npm install or plenti will build using defaults contained in the binary.

@jimafisk
Copy link
Member Author

@jimafisk
Copy link
Member Author

jimafisk commented Jul 1, 2020

Here's the dockerhub repo: https://hub.docker.com/repository/docker/plentico/plenti

Get the latest image: docker pull plentico/plenti:latest

Or get a specific version: docker pull plentico/plenti:v0.1.26 <- note this specific version won't work since nodejs is still required but not packaged with the image.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant