Skip to main content

Build Amazon EC2 AMI image using a Dockerfile

Project description

docker-build-ami

Build Amazon EC2 AMI image using a Dockerfile

Limitations

Only supports instructions ENV, RUN, COPY and ADD, other instructions will just be ignored.

Configuration

There is a separate config file for the script in either “/etc/docker-build-ami.conf” or “~/.docker-build-ami.conf”.

# [main]

# Temporary directory
# tmp_dir = /tmp

# Name tag for host building AMI image
# host_tag = 'docker-build-ami'

# Region
# region = eu-west-1

# Instance type
# instance_type = m3.medium

# Subnet ID
# subnet_id = subnet-123abc45

# Security Groups
# security_group_ids = ["sg-1234", "sg-23456"]

# Host Tags - additional tags to add to EC2 host
# host_tags = [{"Key": "foo", "Value": "bar"}]

# AWS access key id
# aws_access_key_id = DFSDF3HGDF4SDSD1DDFF

# AWS secret access key
# aws_secret_access_key = 3riljdsf5SDFSDvsdfds452sdSDFDfsdf44SDFdRA

# Base image from which the output image is built
# image_id = ami-0df67e2624dedbae1

# EC2 user used to build instances (usually AMI dependent)
# image_user = ubuntu

# The AMI Name of the output image
# image_name = ubuntu-test

# Image Tags - tags to add to AMI
# image_tags = [{"Key": "foo", "Value": "bar"}]

Usage

usage: docker-build-ami [-h] [-c CONFIG] [-d] [-r REGION] [-t INSTANCE_TYPE]
                        [-s SUBNET_ID] [-n IMAGE_NAME] [-i IMAGE_ID]
                        [-u IMAGE_USER]

optional arguments:
  -h, --help            show this help message and exit
  -c CONFIG, --config CONFIG
                        Configuration file
  -d, --debug           Print debug info
  -r REGION, --region REGION
                        AWS region
  -t INSTANCE_TYPE, --instance-type INSTANCE_TYPE
                        EC2 instance type
  -s SUBNET_ID, --subnet-id SUBNET_ID
                        AWS subnet id
  -n IMAGE_NAME, --image-name IMAGE_NAME
                        Target AMI image name
  -i IMAGE_ID, --image-id IMAGE_ID
                        Source AMI image ID
  -u IMAGE_USER, --image-user IMAGE_USER
                        AMI image user

Running Tests

# Run these lines once
pip3 install -r requirements-test.txt
pre-commit install

# Run these lines to check code formatting and correctness
flake8 --show-source --filename="\*.py" .
pytest --cov=docker2ami

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mmuller88-docker-build-ami-0.7.1.tar.gz (10.8 kB view details)

Uploaded Source

File details

Details for the file mmuller88-docker-build-ami-0.7.1.tar.gz.

File metadata

  • Download URL: mmuller88-docker-build-ami-0.7.1.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6

File hashes

Hashes for mmuller88-docker-build-ami-0.7.1.tar.gz
Algorithm Hash digest
SHA256 2cf06a7351a02b8beccd792669c8d4f2f843ca76875a6dc7e88e757dd7e23864
MD5 e5bda82110131f807cf04609855d6bfb
BLAKE2b-256 720a1ab8b6bd3d03f98a47b39ad5bfaab3b9aa2df000995c472d5219273b471e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page