Merge remote-tracking branch 'refs/remotes/origin/main'
This commit is contained in:
@@ -54,6 +54,7 @@ apt install git -y
|
||||
curl -fsSL https://get.docker.com -o get-docker.sh && sh ./get-docker.sh
|
||||
docker run hello-world && docker info
|
||||
apt install sshfs
|
||||
apt install ansible
|
||||
```
|
||||
|
||||
## fstab
|
||||
@@ -96,12 +97,8 @@ docker volume create --driver local --opt type=none --opt device=/ --opt o=bind
|
||||
```
|
||||
|
||||
### Portainer
|
||||
for more information [check](https://git.limbosolutions.com/kb/portainer)
|
||||
|
||||
#### Setup & Update
|
||||
``` bash
|
||||
services/portainer/docker-run.sh
|
||||
```
|
||||
mantained by ansible [myInfra.dev.homesrv01 role](ansible/roles/myInfra.dev.homesrv01/README.md)
|
||||
|
||||
### Promtail
|
||||
|
||||
|
||||
0
ansible/roles/myInfra.dev.homesrv01/README.md
Normal file
0
ansible/roles/myInfra.dev.homesrv01/README.md
Normal file
57
ansible/roles/myInfra.dev.homesrv01/meta/main.yml
Normal file
57
ansible/roles/myInfra.dev.homesrv01/meta/main.yml
Normal file
@@ -0,0 +1,57 @@
|
||||
|
||||
|
||||
|
||||
galaxy_info:
|
||||
author: your name
|
||||
description: your role description
|
||||
company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Choose a valid license ID from https://spdx.org - some suggested licenses:
|
||||
# - BSD-3-Clause (default)
|
||||
# - MIT
|
||||
# - GPL-2.0-or-later
|
||||
# - GPL-3.0-only
|
||||
# - Apache-2.0
|
||||
# - CC-BY-4.0
|
||||
license: license (GPL-2.0-or-later, MIT, etc)
|
||||
|
||||
min_ansible_version: 2.1
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
#
|
||||
# Provide a list of supported platforms, and for each platform a list of versions.
|
||||
# If you don't wish to enumerate all versions for a particular platform, use 'all'.
|
||||
# To view available platforms and versions (or releases), visit:
|
||||
# https://galaxy.ansible.com/api/v1/platforms/
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies:
|
||||
- role: myInfra.journald
|
||||
# - role: myInfra.telegraf (currently using docker telegraf container )
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
@@ -0,0 +1,60 @@
|
||||
- name: Check /etc/homesrv01/auto-update
|
||||
become: true
|
||||
ansible.builtin.file:
|
||||
path: /etc/homesrv01/auto-update
|
||||
state: directory
|
||||
mode: '0755'
|
||||
|
||||
- name: Check /etc/homesrv01/auto-update/tasks
|
||||
become: true
|
||||
ansible.builtin.file:
|
||||
path: /etc/homesrv01/auto-update/tasks
|
||||
state: directory
|
||||
mode: '0755'
|
||||
|
||||
- name: copy /tasks/docker/portainer.yml
|
||||
become: true
|
||||
ansible.builtin.copy:
|
||||
dest: "/etc/homesrv01/auto-update/tasks/portainer.yml"
|
||||
src: "tasks/docker/portainer.yml"
|
||||
|
||||
- name: setup auto-update.yml
|
||||
become: true
|
||||
copy:
|
||||
dest: "/etc/homesrv01/auto-update/site.yml"
|
||||
content: |
|
||||
# file maintained by myInfra.dev.homesrv01 ansible role
|
||||
---
|
||||
- name: "auto update system"
|
||||
hosts: localhost
|
||||
tasks:
|
||||
- name: Include portainer update
|
||||
import_tasks: "tasks/portainer.yml"
|
||||
|
||||
|
||||
- name: setup auto-update executable
|
||||
become: true
|
||||
copy:
|
||||
dest: "/usr/local/bin/auto-update"
|
||||
content: |
|
||||
# file maintained by myInfra.dev.homesrv01 ansible role
|
||||
ansible-playbook /etc/homesrv01/auto-update/site.yml
|
||||
|
||||
- name: setup auto-update executable
|
||||
become: true
|
||||
file: dest=/usr/local/bin/auto-update mode=a+x
|
||||
|
||||
- name: setup auto-update cron
|
||||
become: true
|
||||
file: dest=/usr/local/bin/auto-update mode=a+x
|
||||
|
||||
- name: setup auto-update daily cron file
|
||||
become: true
|
||||
ansible.builtin.cron:
|
||||
user: root
|
||||
name: auto-update
|
||||
weekday: "*"
|
||||
minute: "0"
|
||||
hour: "0"
|
||||
job: "/usr/local/bin/auto-update"
|
||||
cron_file: myInfra_auto-update
|
||||
@@ -0,0 +1,2 @@
|
||||
---
|
||||
- include_tasks: portainer.yml
|
||||
@@ -0,0 +1,14 @@
|
||||
- name: Portainer - Docker Container Setup
|
||||
become: true
|
||||
community.docker.docker_container:
|
||||
name: portainer
|
||||
image: portainer/portainer-ce
|
||||
state: started
|
||||
restart_policy: unless-stopped
|
||||
pull: yes
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- portainer:/data
|
||||
ports:
|
||||
- "9443:9443"
|
||||
- "8000:8000"
|
||||
3
ansible/roles/myInfra.dev.homesrv01/tasks/main.yml
Normal file
3
ansible/roles/myInfra.dev.homesrv01/tasks/main.yml
Normal file
@@ -0,0 +1,3 @@
|
||||
---
|
||||
- include_tasks: docker/main.yml
|
||||
- include_tasks: auto-update.setup.yml
|
||||
@@ -1,5 +0,0 @@
|
||||
#! /bin/bash
|
||||
docker pull portainer/portainer-ce
|
||||
docker stop portainer
|
||||
docker rm portainer
|
||||
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer:/data portainer/portainer-ce
|
||||
Reference in New Issue
Block a user