Config Jets Deploy Docker
Reference
The table below covers each setting. Each option is configured with config.OPTION
. The config.
portion is not shown for conciseness. IE: logger.level
vs config.logger.level
.
Name | Default | Description |
---|---|---|
docker.image | nil | Prebuilt Docker Image. |
docker.tag | “:FRIENDLY_TAG-:TIMESTAMP-:GIT_SHA” | Docker tag format string. |
docker.show_build_command | false | Show docker build command in the deploy output. |
dockerfile.add_deploy_user | true | Add deploy user and Docker USER deploy:deploy instruction to near the bottom of the Dockerfile. Turning this off will mean the USER will be root. Can be useful for debugging. |
dockerfile.build_args.at_top | nil | Hash of vars you want Jets to use for docker build --build-arg . Added to the top of the Dockerfile. |
dockerfile.build_args.build_stage | nil | Hash of vars you want Jets to use for docker build --build-arg . Added to the build stage of the Dockerfile. |
dockerfile.build_args.deployment_stage | nil | Hash of vars you want Jets to use for docker build --build-arg . Added to the deployment stage of the Dockerfile. |
dockerfile.build_args.enable_aws_creds | true | Enable auto-generated build-args that pass the CodeBuild IAM role to docker build . This allows the commands within the docker build process to have the same AWS access level as the CodeBuild remote runner. |
dockerfile.commands.bootsnap | nil | For Rails, bundle exec bootsnap precompile app/ lib/ . For other frameworks, nil. |
dockerfile.custom | false | Allows you to use your own custom Dockerfile. Note, the Dockefile must be compatiable with Jets and Lambda. You are responsible for maintaining and updating it. |
dockerfile.gemfile.force_ruby_platform | false | Adds a RUN bundle config set force_ruby_platform true before the bundle install in the Gemfile. Sometimes this helps fix some gem issues. This makes bundle install much slower. IE: 90s vs 20s. |
dockerfile.install.awscli | true | Install the AWS CLI within the docker build . |
dockerfile.apt.packages.all_stages | [] | Additional apt packages to install for all Docker stages. |
dockerfile.apt.packages.build_stage | [] | Additional apt packages to install during the build Docker stage. |
dockerfile.apt.packages.deployment_stage | [] | Additional apt packages to install during the deployment Docker stage. |
dockerfile.auto_packages | true | Jets auto-detects required packages based on gems and automatically adds them. |
dockerfile.copy_for_bundle | nil | List of folders to copy before the first bundle install. String or Array of Strings. This can be useful for copying files that are needed for the bundle install. IE: An engines folder with a Gemfile using path: engines/engine_name . |
dockerfile.image_package.from_base.docker_image | nil | Full image name, IE: ruby:3.2.3-slim Overrides other settings. |
dockerfile.image_package.from_base.image_name | “ruby” | Base image name without tag. |
dockerfile.image_package.from_base.image_tag | nil | Auto-detected by default. IE: 3.2.3 |
dockerfile.image_package.from_base.image_variant | “slim” | Image variant. |
dockerfile.image_package.from_base.ruby_version | nil | Auto-detected by default. IE: 3.2.3 |
dockerfile.image_package.normalize_permissions | true | Normalize permissions for all files and directories in the Docker image. Avoids issues with Lambda not being able to read files. Can happen when Jets deploying from Heroku release phase hook. |
dockerfile.yum.packages.all_stages | [] | Additional yum packages to install for all Docker stages. |
dockerfile.yum.packages.build_stage | [] | Additional yum packages to install during the build Docker stage. |
dockerfile.yum.packages.deployment_stage | [] | Additional yum packages to install during the deployment Docker stage |
dockerfile.zip_package.from_base.docker_image | nil | Full image name, IE: public.ecr.aws/lambda/ruby:3.2.3 Overrides other settings. |
dockerfile.zip_package.from_base.image_name | “public.ecr.aws/lambda/ruby” | Base image name without tag. |
dockerfile.zip_package.from_base.image_tag | nil | Auto-detected by default. IE: 3.2.3 |
dockerfile.zip_package.from_base.image_variant | nil | IE: “slim”. The AWS Lambda Image do not use variants. |
dockerfile.zip_package.from_base.ruby_version | nil | Auto-detected by default. IE: 3.2.3 |