Skip to content
This repository has been archived by the owner on Feb 9, 2024. It is now read-only.

arista-netdevops-community/docker-avd-base

Repository files navigation

DEPRECATED

No Maintenance Intended

Consider using this replacement container https://github.com/aristanetworks/avd/pkgs/container/avd%2Fdev

Documentation: https://avd.arista.com/stable/docs/containers/overview.html


GitHub Docker Pulls Docker Image Size (tag) Docker Image Version (tag latest semver)

AVD Base Image

Image with all python requirements installed to then run Arista Validated Design collection with a minimal configuration overhead. It can be used to support local development using following workflow

Docker image: avdteam/base

Arista AVD Docker Image

Table of content

Description

Available Tags

Stable version

  • 3.6-v<git-tag>
  • 3.7-v<git-tag>
  • 3.8-v<git-tag>

Deprecated

Current image used in AVD development: avdteam/base:3.6

Available variables

These variables are used in CMD to customize container content using -e option of docker cli:

  • AVD_REQUIREMENTS: Path to a requirements.txt to install during container startup.
  • AVD_ANSIBLE: Ansible version to install in container when booting up
  • AVD_UID: set uid for avd user in container.
  • AVD_GID: set gid for avd user in container.
  • AVD_GIT_USER: Username to configure in .gitconfig file.
    • Can be set with AVD_GIT_USER=$(git config --get user.name)
  • AVD_GIT_EMAIL: Email to configure in .gitconfig file.
    • Can be set with AVD_GIT_EMAIL=$(git config --get user.email)

To see how to customize your container with these options, you can refer to How to install ansible and Python requirements page

How to leverage image

This image can be leveraged in different use-cases such as ansible or gNMI automation for Arista products.

In every scenario, you can use an isolated shell to test your automation workflow or you can start a shell with a mount point to use your local content.

Arista Validated Design

This docker image was primarily built to support development and playbook execution of Arista Validated Design project.

Here are some repositories leveraging avdteam/base:

Generic Arista Automation Purpose

Docker image has been extended to support all Arista automation tools.

Here are some EOS automation examples leveraging avdteam/base:

Run container

Start isolated shell

$ docker run --rm -it avdteam/base:3.6
➜  /projects

You can also configure your shell with an alias to make it easy to start container

# Configure alias in bashrc
alias avd-shell='docker run -it --rm avdteam/base:latest zsh'

# Run alias command
$ avd-shell
➜  /projects

Start shell in your project

$ docker run --rm -it -v ${PWD}:/projects avdteam/base:3.6
➜  /projects ls
Makefile  README.md  activate-arista.cvp-logs.env

You can also configure your shell with an alias to make it easy to start container

# Configure alias in bashrc
alias avd-shell='docker run -it --rm \
	-v ${PWD}/:/projects \
	avdteam/base:latest zsh'

# Run alias command
$ avd-shell
➜  /projects
Makefile  README.md  activate-arista.cvp-logs.env

Update container image

To update container image, just run docker command:

$ docker pull avdteam/base:3.6
3.6: Pulling from avdteam/base
Digest: sha256:1602b5ab710c3a3ac9a8e93c1672c295afcd262c01b6201c0f5f83b50ff42705
Status: Image is up to date for avdteam/base:3.6
docker.io/avdteam/base:3.6

Additional Resources

License

Project is published under Apache 2.0 License