Consider using this replacement container https://github.com/aristanetworks/avd/pkgs/container/avd%2Fdev
Documentation: https://avd.arista.com/stable/docs/containers/overview.html
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
Table of content
3.6-v<git-tag>
3.7-v<git-tag>
3.8-v<git-tag>
Current image used in AVD development: avdteam/base:3.6
These variables are used in CMD
to customize container content using -e
option of docker cli:
AVD_REQUIREMENTS
: Path to arequirements.txt
to install during container startup.AVD_ANSIBLE
: Ansible version to install in container when booting upAVD_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)
- Can be set with
AVD_GIT_EMAIL
: Email to configure in .gitconfig file.- Can be set with
AVD_GIT_EMAIL=$(git config --get user.email)
- Can be set with
To see how to customize your container with these options, you can refer to How to install ansible and Python requirements page
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.
This docker image was primarily built to support development and playbook execution of Arista Validated Design project.
Here are some repositories leveraging avdteam/base
:
Docker image has been extended to support all Arista automation tools.
Here are some EOS automation examples leveraging avdteam/base
:
- eAPI automation example repository
- Ansible automation repository
- Pyang and Pyangbind repository
- Netconf example
$ 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
$ 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
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
- Build and Maintain avd-docker-image
- Options to run avd image and make custom container
- Leverage avdteam/base image in VSCode for development and testing
Project is published under Apache 2.0 License