exrm_docker alternatives and similar packages
Based on the "Release Management" category.
Alternatively, view exrm_docker alternatives based on common mentions on social networks and blogs.
-
heroku-buildpack-elixir
Heroku Buildpack for Elixir with nitro boost -
mix_docker
Put your Elixir app production release inside minimal docker image. -
ansible-elixir-stack
Ansible role to setup server with Elixir & Postgres to deploy apps -
bottler
Get your Elixir into proper recipients, and serve it nicely to final consumers -
renew
Mix task to create mix projects that builds into Docker containers. -
versioce
Version bumping and changelog generation for your mix project
Clean code begins in your IDE with SonarLint
Do you think we are missing an alternative of exrm_docker or a related project?
README
DEPRECATED
This package is no longer under support. The release tool this package is based off of (exrm) is deprecated and replaced by distillery. Instead you should use mix_docker which makes use of Distillery.
ExrmDocker
Create a Docker image from your Elixir release
Usage
To create a new Docker image simply run:
mix release --docker
This will output the docker build
result with the created image id.
To specify docker image tag you can use --tag
option:
mix release --docker --tag=test:0.3
docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
test 0.3 6d3d5f9abac4 6 seconds ago 224.3 MB
by default it uses project name.
Once your image has been built, start a new container.
docker run -itd <image_id> console
Next you can attach to your container.
docker attach <container_id>
And detach using Ctrl-p Ctrl-q
.
Check below for configuration options.
Installation
Add exrm_docker to your list of dependencies in mix.exs
:
def deps do
[{:exrm_docker, "~> 0.2.1"}]
end
exrm_docker config.exs
Key | Default | Description |
---|---|---|
image | centos | Which image to use |
version | nil | Which image version to use |
maintainer | nil | Image maintainer |
copy_rel | COPY rel /rel | Copy the release to the container |
pre_copy | nil | Any Dockerfile commands before copy |
post_copy | nil | Any Dockerfile commands after copy |
entrypoint | ENTRYPOINT ["rel/#{project}/bin/#{project}"] | Entrypoint of the image |
entrypoint_args | nil | Arguments to use for the entrypoint, e.g. 'console' |