Ctrl K
ComunidadGuías…

ansible/install-docker.yml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
---
- hosts: localhost
  become: true
  vars:
    docker_edition: 'ce'
    docker_package_state: present
    docker_service_state: started
    docker_service_enabled: true
    docker_restart_handler_state: restarted
    docker_install_compose_plugin: true
    docker_compose_package: docker-compose-plugin
    docker_compose_package_state: present
    # Fallback chain: USER -> SUDO_USER -> ansible detected user
    docker_users:
      - "{{ lookup('env', 'USER') | default(lookup('env', 'SUDO_USER'), true) | default(ansible_user_id, true) }}"
  roles:
    - geerlingguy.docker

  tasks:
    # https://code.visualstudio.com/docs/setup/linux#_visual-studio-code-is-unable-to-watch-for-file-changes-in-this-large-workspace-error-enospc
    - name: Set fs.inotify.max_user_watches
      sysctl:
        name: fs.inotify.max_user_watches
        value: '524288'
        sysctl_file: /etc/sysctl.conf

    - name: Set net.core.somaxconn
      sysctl:
        name: net.core.somaxconn
        value: '1024'
        sysctl_file: /etc/sysctl.conf

    - name: Set vm.max_map_count
      sysctl:
        name: vm.max_map_count
        value: '262144'
        sysctl_file: /etc/sysctl.conf

    - name: Set vm.overcommit_memory
      sysctl:
        name: vm.overcommit_memory
        value: '1'
        sysctl_file: /etc/sysctl.conf

    - name: Set vm.swappiness
      sysctl:
        name: vm.swappiness
        value: '1'
        sysctl_file: /etc/sysctl.conf

    - name: Create disable-hugepages.service file
      ansible.builtin.copy:
        content: |
          [Unit]
          Description=Disable Transparent Hugepage
          Before=docker.service

          [Service]
          Type=oneshot
          ExecStart=/bin/bash -c 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'
          ExecStart=/bin/bash -c 'echo never > /sys/kernel/mm/transparent_hugepage/defrag'

          [Install]
          RequiredBy=docker.service
        dest: /etc/systemd/system/disable-hugepages.service
        mode: '0644'
      notify: Reload systemd

    - name: Enable and start disable-hugepages.service
      ansible.builtin.systemd:
        name: disable-hugepages
        enabled: true
        state: started
        daemon_reload: true

  handlers:
    - name: Reload systemd
      ansible.builtin.systemd:
        daemon_reload: true