All Projects → geerlingguy → Awx Container

geerlingguy / Awx Container

Licence: mit
Ansible Container project that manages the lifecycle of AWX on Docker.

Projects that are alternatives of or similar to Awx Container

Opendevops
CODO是一款为用户提供企业多混合云、一站式DevOps、自动化运维、完全开源的云管理平台、自动化运维平台
Stars: ✭ 2,990 (+917.01%)
Mutual labels:  ansible, ci, cd
Ansible Role Awx
Ansible Role - AWX
Stars: ✭ 228 (-22.45%)
Mutual labels:  ansible, ci, cd
test-infra
Falco workflow & testing infrastructure
Stars: ✭ 18 (-93.88%)
Mutual labels:  ci, cd
docs
OOCLAB 开放文档中心
Stars: ✭ 14 (-95.24%)
Mutual labels:  ci, cd
flagsmith-nodejs-client
Flagsmith Node JS Client. Flagsmith lets you manage features flags across web, mobile and server side applications. Get builds out faster. Control who has access to new features.
Stars: ✭ 13 (-95.58%)
Mutual labels:  ci, cd
action-junit-report
Reports junit test results as GitHub Pull Request Check
Stars: ✭ 103 (-64.97%)
Mutual labels:  ci, cd
flagsmith-js-client
Javascript Client for Flagsmith. Ship features with confidence using feature flags and remote config. Host yourself or use our hosted version at https://www.flagsmith.com/
Stars: ✭ 42 (-85.71%)
Mutual labels:  ci, cd
update-container-description-action
github action to update a Docker Hub, Quay or Harbor repository description from a README file
Stars: ✭ 20 (-93.2%)
Mutual labels:  ci, cd
symfony-lts-docker-starter
🐳 Dockerized your Symfony project using a complete stack (Makefile, Docker-Compose, CI, bunch of quality insurance tools, tests ...) with a base according to up-to-date components and best practices.
Stars: ✭ 39 (-86.73%)
Mutual labels:  ci, cd
awesome
A curated list of delightful developers resources.
Stars: ✭ 13 (-95.58%)
Mutual labels:  ci, cd
makes
A DevSecOps framework powered by Nix.
Stars: ✭ 158 (-46.26%)
Mutual labels:  ci, cd
Nvwa Io
Nvwa-io is a open source DevOps CI/CD auto-build and auto-deploy system(女娲 - 开源 DevOps CI/CD 自动构建和自动部署系统). http://nvwa-io.com
Stars: ✭ 283 (-3.74%)
Mutual labels:  ci, cd
AzDo.VstsDashboard
Provide a simple way to view all Builds and Releases on a single page. The intend was to see what's currently happened into the CI/CD pipeline and provide quick feedback of what's going on.
Stars: ✭ 16 (-94.56%)
Mutual labels:  ci, cd
xray-action
... a GitHub action to import test results into "Xray" - A complete Test Management tool for Jira.
Stars: ✭ 16 (-94.56%)
Mutual labels:  ci, cd
dockerized-drupal-starter
End-to-end (CI + CD) dockerized Drupal 8 starting point.
Stars: ✭ 27 (-90.82%)
Mutual labels:  ci, cd
devops-guidebook
📚 DevOps 知识图谱 关于Linux、服务器、数据库、部署等相关体系
Stars: ✭ 25 (-91.5%)
Mutual labels:  ci, cd
setup-scheme
Github Actions CI / CD setup for Scheme
Stars: ✭ 13 (-95.58%)
Mutual labels:  ci, cd
bx-docker
Tutorial on how to build Docker Images for the IAR Build Tools on Linux hosts. The IAR Build Tools on Linux are available for Arm, RISC-V and Renesas (RH850, RL78 and RX).
Stars: ✭ 28 (-90.48%)
Mutual labels:  ci, cd
wordpress-skeleton
A base repository structure for rtCamp's WordPress sites, pre-configured to use Github Actions
Stars: ✭ 32 (-89.12%)
Mutual labels:  ci, cd
howtheydevops
A curated collection of publicly available resources on how companies around the world practice DevOps
Stars: ✭ 318 (+8.16%)
Mutual labels:  ci, cd

AWX (Built with Ansible Container)

DEPRECATED: This project has been deprecated. Please use the official AWX containers and docker-compose.yml file to run AWX instead.

Build Status

This project is in its early stages. There will be bugs!

This project is composed of three main parts:

  • Ansible Container project: This project is maintained on GitHub: geerlingguy/awx-container. Please file issues, support requests, etc. against this GitHub repository.
  • Docker Hub Image: If you just want to use geerlingguy/awx_web and geerlingguy/awx_task in your project, you can pull it from Docker Hub.
  • Ansible Role: If you need an Ansible role to build AWX, check out geerlingguy.awx on Ansible Galaxy. (This is the Ansible role that does the bulk of the work in managing the AWX container.)

Versions

Currently maintained versions include:

  • geerlingguy/awx_web:
    • 1.x, latest: AWX 1.x
    • 1.0.5
  • geerlingguy/awx_task:
    • 1.x, latest: AWX 1.x
    • 1.0.5

Quickstart - Standalone Usage with Docker Compose

If you just want to get an AWX environment running quickly, you can use the docker-compose.yml file included with this project to build a local environment accessible on http://localhost:80/:

mkdir awx-test && cd awx-test
curl -O https://raw.githubusercontent.com/geerlingguy/awx-container/master/docker-compose.yml
docker-compose up -d

The Docker Compose file uses community images for postgres, rabbitmq, and memcached, and the following images for AWX:

After the initial database migration completes (this can take a few minutes; follow the progress with docker logs -f [id-of-awx_task-container]), you will be able to access the AWX interface at http://localhost/. The default login is admin/password.

Note: Switch the image for the awx_web and awx_task containers in docker-compose.yml if you want to use the geerlingguy/ maintained images rather than the ones from ansible/. If you're just kicking AWX's tires though, stick with the defaults.

Management with Ansible Container

Prerequisites

Before using this project to build and maintain AWX images for Docker, you need to have the following installed:

Build the AWX images

Typically, you would build the images as specified in the container.yml file using ansible-container --var-file config.yml build, but in this case, since there are many dependencies bundled in the AWX repository, we will build the Docker images using a helper playbook:

$ cd prebuild/
$ ansible-galaxy install -r requirements.yml --force
$ ansible-playbook -i 'localhost,' -c local prebuild.yml

After this playbook runs, you should see two new Docker images (which we'll use in the Ansible Container definition):

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
awx_task            devel               26311794058d        29 seconds ago      938MB
awx_web             devel               3d38dccc9190        58 seconds ago      913MB

A Vagrantfile is included with this project to assist in building a clean environment with all the dependencies required to build the AWX images (in case you don't want to install everything on your local workstation!). To use it:

  1. Run vagrant up.
  2. Wait for Vagrant's provisioning to complete (it will run prebuild.yml automatically).
  3. Log in with vagrant ssh and use docker or ansible as needed.

Build the conductor

Build the conductor using ansible-container build:

ansible-container --var-file config.yml build

Note: If you get any permission errors trying to generate a Docker container, make sure you're either running the commands as root or with sudo, or your user is in the docker group (e.g. sudo usermod -G docker -a [user], then log out and log back in).

Run the containers

ansible-container --var-file config.yml run

You should be able to reach AWX by accessing http://localhost/ in your browser.

(Use stop to stop the container, and destroy to reset the containers and all images.)

Push the containers to Docker Hub

Currently, the process for updating this image on Docker Hub is manual. Eventually this will be automated via Travis CI using ansible-container push (currently, this is waiting on this issue to be resolved).

  1. Log into Docker Hub on the command line:

    docker login --username=geerlingguy
    
  2. Tag the latest version (only if this is the latest/default version):

    docker tag awx_web:devel geerlingguy/awx_web:latest
    docker tag awx_web:devel geerlingguy/awx_web:1.x
    docker tag awx_task:devel geerlingguy/awx_task:latest
    docker tag awx_task:devel geerlingguy/awx_task:1.x
    
  3. Push tags to Docker Hub:

    docker push geerlingguy/awx_web:latest # (if this was just tagged)
    docker push geerlingguy/awx_web:1.x
    [etc...]
    

License

MIT / BSD

Author Information

This container build was created in 2017 by Jeff Geerling, author of Ansible for DevOps.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].