The terraform configuration for vps (10 Go). Deploy docker containers.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

110 lines
2.2 KiB

---
- name: "Add packages"
ansible.builtin.apt:
name:
- mariadb-server
- php
- php-bcmath
- php-cli
- php-common
- php-curl
- php-fpm
- php-gd
- php-gmp
- php-imagick
- php-intl
- php-mbstring
- php-mysql
- php-redis
- php-xml
- php-zip
- python3-pymysql
- rsync
- sudo
- tmux
- unzip
- vim
state: present
become: true
- name: "Create a new database"
community.mysql.mysql_db:
name: nextcloud
state: present
login_unix_socket: /run/mysqld/mysqld.sock
become: true
- name: "Add mariadb account"
community.mysql.mysql_user:
name: username
host: localhost
password: password
priv: 'nextcloud.*:ALL'
state: present
login_unix_socket: /run/mysqld/mysqld.sock
become: true
- name: "Copy apache site"
ansible.builtin.template:
src: templates/vps.conf.j2
dest: /etc/apache2/sites-available/vps.conf
owner: root
group: root
mode: '0644'
become: true
- name: "Test my site"
ansible.builtin.stat:
path: /etc/apache2/sites-enabled/vps.conf
register: mysite
- name: "Activate site"
ansible.builtin.command: a2ensite vps
changed_when: false
when: not mysite.stat.exists
become: true
- name: "Enable ssl module"
community.general.apache2_module:
name: "{{ item }}"
state: present
loop:
- ssl
- rewrite
- headers
- env
- dir
- mime
become: true
- name: "Restart apache"
ansible.builtin.systemd:
name: apache2
state: restarted
become: true
- name: "Test my site"
ansible.builtin.stat:
path: /var/www/nextcloud
register: wwwdata
- name: Unarchive a file that needs to be downloaded (added in 2.0)
ansible.builtin.unarchive:
src: https://download.nextcloud.com/server/releases/latest.zip
dest: /var/www
owner: www-data
group: www-data
mode: "0755"
remote_src: true
become: true
when: not wwwdata.stat.isdir
- name: "Copy apache site"
ansible.builtin.template:
src: templates/autoconfig.php.j2
dest: /var/www/nextcloud/config/autoconfig.php
owner: www-data
group: www-data
mode: '0640'
become: true