Giter Club home page Giter Club logo

docker-devops-env's Introduction

Here is the translation of the Markdown file to English:

Docker image for IaC tool management

Requirements

To build this image, it is necessary to have installed the following on your workstation:

  1. packer =~ 1.9.2
  2. python =~ 3.10.12
  3. pipenv =~ 2023.6.18
  4. taskfile =~ 3.28.0
  5. docker =~ 24.0.5

Installation of requirements

Packer on Mac OS

It can be installed using Mac Ports or Brew, or by directly downloading the binary from the packer page and copying it to the path ${HOME}/.local/bin or any other application path within the user's ${PATH} environment variable.

Mac Ports

sudo port selfupdate && sudo port install packer

Brew

# First we add the Hashicorp repository in brew
brew tap hashicorp/tap

# Install packer
brew install hashicorp/tap/packer

Packer on Linux

These instructions are for Debian or derivatives:

# Download the cryptographic key from the repository
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -

# We add the official Hshicorp repository
sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"

# We update the package DB and install packer
sudo apt-get update && sudo apt-get install packer

NOTE: It must be taken into consideration that these instructions are for the configuration of the repository in the 64 Bit x86 architecture.

Pipev on Mac OS

Mac Ports

sudo port selfupdate && sudo port install pipenv

Python on any platform

pip3 install --user pipenv

Taskfile on any platform

Follow the installation instructions for your platform on the Taskfile page.

Environment preparation

To build the image we must follow these steps:

  1. Clone this repository to your workstation.
  2. Go to the root of the repository and run the command pipenv install
  3. Enter the Python virtual environment with pipenv shell

Image building

Build the image with task build

Development/Maintenance

To maintain or provision software in the image, the tools provided by Packer are used. If you want to test a role or playbook you must use the command task build:debug, this way if ansible fails, Packer will ask you what you want to do, you can [a]bort or [r]etry after making the corresponding corrections in the ansible role that fails.

docker-devops-env's People

Stargazers

Mir avatar  avatar

Watchers

Oscar A. Mata T. avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.