Skip to content

Automated setup, configuration and maintenance of Ubuntu Machine using Ansible

License

Notifications You must be signed in to change notification settings

prashantsolanki3/dots

Repository files navigation

Ansible Dotfiles

This repository contains an Ansible playbook for setting up a development environment on a new machine. It installs and configures various tools and dotfiles.

What is this?

This is an Ansible project used to configure and maintain ubuntu based development VM, install software, manage dotfiles, manage the configuration and more.

Requirements

  • Ansible 2.9+
  • A Unix-based operating system (e.g. Linux, macOS)

How to use

Using Terraform Development Box companion project

Clone and Setup Development VM Terraform Repo. Follow the instructions to run the project. It would automatically use this project to create and configure a ubuntu vm on a proxmox host.

Using manual installation

  1. Set up machine with basic installation of Ubuntu Server.
    • SSH server is required if you plan to complete the installation remotely.
  2. Move to non-default TTY or SSH into the machine remotely.
  3. Install Ansible and other dependencies sudo apt install python3 python3-pip git
  4. Install Ansible sudo pip3 install ansible
  5. Clone this repository to git clone https://github.com/prashantsolanki3/dots.git ~/dots
  6. Change directory: cd ~/dots
  7. Review the contents of the dev.yml file to see what tasks will be performed during the provisioning process. You can also add your own tasks and files by creating a new directory and adding them to the tasks and files directories, respectively.

Run Ansible

  • Run Ansible in check mode

    ansible-playbook -i hosts --extra-vars "@env.yml" pluto.yml -C

  • Run Ansible against the hosts defined in the hosts file.

    ansible-playbook -i hosts --extra-vars "@env.yml" pluto.yml

    Note: Root privileges required to install system packages and other configuration. Ansible will ask you for your password to become root user. This is required because Ansible automates package installation, changes settings only accessible to root etc.

    Once the playbooks are applied, you might need to reboot.

Credits

About

Automated setup, configuration and maintenance of Ubuntu Machine using Ansible

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published