commit f4324b427d5cea74996d20c39fd3ea147d785b98 Author: Tim Schilling Date: Tue Nov 19 08:46:20 2024 +0100 State after Chapter 1 diff --git a/.ansible-lint b/.ansible-lint new file mode 100644 index 0000000..6c38410 --- /dev/null +++ b/.ansible-lint @@ -0,0 +1,2 @@ +skip_list: + - 'fqcn-builtins' \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..5d71af8 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "ansible.python.interpreterPath": "/bin/python3" +} \ No newline at end of file diff --git a/.vscode/settings.json:Zone.Identifier b/.vscode/settings.json:Zone.Identifier new file mode 100644 index 0000000..a45e1ac --- /dev/null +++ b/.vscode/settings.json:Zone.Identifier @@ -0,0 +1,2 @@ +[ZoneTransfer] +ZoneId=3 diff --git a/ansible.cfg b/ansible.cfg new file mode 100644 index 0000000..ede2474 --- /dev/null +++ b/ansible.cfg @@ -0,0 +1,5 @@ +[defaults] +inventory = inventory/testserver.ini +host_key_checking = False +stdout_callback = yaml +callback_enabled = timer \ No newline at end of file diff --git a/files/nginx.conf b/files/nginx.conf new file mode 100644 index 0000000..82258f1 --- /dev/null +++ b/files/nginx.conf @@ -0,0 +1,10 @@ +server { + listen 80 default_server; + listen [::]:80 default_server ipv6only=on; + root /usr/share/nginx/html; + index index.html index.htm; + server_name localhost; + location / { + try_files $uri $uri/ =404; + } +} diff --git a/inventory/testserver.ini b/inventory/testserver.ini new file mode 100644 index 0000000..2836f2a --- /dev/null +++ b/inventory/testserver.ini @@ -0,0 +1,7 @@ +[webservers] +testserver ansible_port=22 + +[webservers:vars] +ansible_user = tim +ansible_host = 192.168.62.160 +ansible_private_key_file = keys/id_ed25519 \ No newline at end of file diff --git a/keys/id_ed25519 b/keys/id_ed25519 new file mode 100644 index 0000000..46fb593 --- /dev/null +++ b/keys/id_ed25519 @@ -0,0 +1,7 @@ +-----BEGIN OPENSSH PRIVATE KEY----- +b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW +QyNTUxOQAAACC1SsPDzw0Rioh/4VF0hXqwQrJmEghsQvJMiuHHU7FkOAAAAJgiWNTXIljU +1wAAAAtzc2gtZWQyNTUxOQAAACC1SsPDzw0Rioh/4VF0hXqwQrJmEghsQvJMiuHHU7FkOA +AAAEBznmj4u1JoKTg8mSR8NAmdJWOcNSD6zM7flg22nbwCb7VKw8PPDRGKiH/hUXSFerBC +smYSCGxC8kyK4cdTsWQ4AAAAE3RpbUBTQ0hJTExJTkctTC1XMTEBAg== +-----END OPENSSH PRIVATE KEY----- diff --git a/keys/id_ed25519.pub b/keys/id_ed25519.pub new file mode 100644 index 0000000..33d275d --- /dev/null +++ b/keys/id_ed25519.pub @@ -0,0 +1 @@ +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILVKw8PPDRGKiH/hUXSFerBCsmYSCGxC8kyK4cdTsWQ4 tim@SCHILLING-L-W11 diff --git a/templates/index.html.j2 b/templates/index.html.j2 new file mode 100644 index 0000000..e0ba290 --- /dev/null +++ b/templates/index.html.j2 @@ -0,0 +1,10 @@ + + + Welcome to ansible + + +

Nginx, configured by Ansible

+

If you can see this, Ansible successfully installed nginx.

+

Running on {{ inventory_hostname }}

+ + \ No newline at end of file diff --git a/webserver.yml b/webserver.yml new file mode 100644 index 0000000..35af865 --- /dev/null +++ b/webserver.yml @@ -0,0 +1,31 @@ +--- +- name: Configure webserver with nginx + hosts: webservers + become: true + tasks: + - name: Ensure nginx is installed + package: + name: nginx + update_cache: yes + + - name: Copy nginx config file + copy: + src: nginx.conf + dest: /etc/nginx/sites-available/default + + - name: Enable Configuration + file: + src: /etc/nginx/sites-available/default + dest: /etc/nginx/sites-enabled/default + state: link + + - name: Copy index.html + template: + src: index.html.j2 + dest: /usr/share/nginx/html/index.html + + - name: Restart nginx + service: + name: nginx + state: restarted +... \ No newline at end of file