Add docker and wireguard
parent
dc46810b58
commit
37960f82ec
|
@ -0,0 +1 @@
|
|||
.venv/*
|
24
README.md
24
README.md
|
@ -0,0 +1,24 @@
|
|||
# Ddvic server playbooks
|
||||
|
||||
## Dependencies:
|
||||
System:
|
||||
|
||||
```bash
|
||||
# apt install python3 python3-pip python3-venv
|
||||
```
|
||||
|
||||
Python:
|
||||
|
||||
```bash
|
||||
python3 -m venv .venv
|
||||
source ./.venv/bin/activate
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
Ansible:
|
||||
|
||||
```bash
|
||||
ansible-galaxy install -r requirements.yml
|
||||
```
|
||||
|
||||
## Start
|
||||
You shuold firstly specify server in the `invenvtory` file. Then start the root of repo and execute ` ansible-playbook -i inventory deploy_forcad.yml` command.
|
|
@ -0,0 +1,2 @@
|
|||
[ddvic]
|
||||
192.168.1.182 ansible_connection=ssh ansible_ssh_private_key_file=~/.ssh/keys/id_ed25519_ddvic_server ansible_user=root
|
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
- name: Setup ddvic server
|
||||
hosts: ddvic
|
||||
become: true
|
||||
gather_facts: true
|
||||
|
||||
- name: Setup docker
|
||||
ansible.builtin.import_playbook: playbooks/10-install-docker.yml
|
||||
- name: Setup wireguard
|
||||
ansible.builtin.import_playbook: playbooks/20-install-wireguard.yml
|
|
@ -0,0 +1,49 @@
|
|||
---
|
||||
- name: Install docker
|
||||
hosts: all
|
||||
become: true
|
||||
strategy: free
|
||||
gather_facts: true
|
||||
become_method: sudo
|
||||
tasks:
|
||||
|
||||
- name: Install required system packages
|
||||
apt:
|
||||
pkg:
|
||||
- apt-transport-https
|
||||
- ca-certificates
|
||||
- curl
|
||||
- software-properties-common
|
||||
- python3-pip
|
||||
- virtualenv
|
||||
- python3-setuptools
|
||||
state: latest
|
||||
update_cache: true
|
||||
|
||||
- name: Add Docker GPG apt Key
|
||||
apt_key:
|
||||
url: https://download.docker.com/linux/ubuntu/gpg
|
||||
state: present
|
||||
|
||||
- name: Add Docker Repository
|
||||
apt_repository:
|
||||
repo: deb https://download.docker.com/linux/ubuntu jammy stable
|
||||
state: present
|
||||
|
||||
- name: Update apt and install docker-ce
|
||||
apt:
|
||||
pkg:
|
||||
- docker-ce
|
||||
- docker-compose-plugin
|
||||
state: latest
|
||||
update_cache: true
|
||||
|
||||
- name: Install Docker Module for Python
|
||||
pip:
|
||||
name: docker
|
||||
|
||||
- name: Ensure Docker is enabled and running
|
||||
ansible.builtin.systemd:
|
||||
name: docker
|
||||
state: started
|
||||
enabled: yes
|
|
@ -0,0 +1,38 @@
|
|||
---
|
||||
- name: Install wireguard
|
||||
hosts: all
|
||||
become: true
|
||||
strategy: free
|
||||
gather_facts: true
|
||||
become_method: sudo
|
||||
tasks:
|
||||
|
||||
- name: Install required packages
|
||||
apt:
|
||||
pkg:
|
||||
- wireguard
|
||||
- openresolv
|
||||
state: latest
|
||||
update_cache: true
|
||||
|
||||
- name: Copy wireguard config
|
||||
copy:
|
||||
src: files/wireguard/de.conf
|
||||
dest: /etc/wireguard/de.conf
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0600
|
||||
|
||||
- name: Enable wireguard service
|
||||
systemd:
|
||||
name: wg-quick@de
|
||||
enabled: yes
|
||||
state: started
|
||||
|
||||
- name: Grab the ip address
|
||||
shell: ip addr show dev de | grep -Po 'inet \K[\d.]+'
|
||||
register: ip
|
||||
|
||||
- name: Print the ip address
|
||||
debug:
|
||||
msg: "The ip address is {{ ip.stdout }}"
|
|
@ -0,0 +1 @@
|
|||
de.conf
|
Loading…
Reference in New Issue