nginx 官方下载

[root@ansible roles]# tree yngx
yngx
├── defaults
├── files
│   ├── blog.conf
│   ├── edusoho-8.2..tar.gz
│   ├── nginx.repo
│   ├── WeCenter_v3.1.9.zip
│   └── wordpress-5.0.-zh_CN.tar.gz
├── handlers
│   └── main.yml
├── tasks
│   ├── load.yml
│   ├── main.yml
│   └── main.yml.bak
├── template
└── vars
└── main.yml
变量
[root@ansible yngx]# cat vars/main.yml
user: www
group: www
dir: /code/
官方yum源
[root@ansible files]# cat nginx.repo 
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1 任务剧本
[root@ansible yngx]# cat tasks/main.yml
- name: cp ngxconf
copy: src=blog.conf dest=/etc/nginx/conf.d
notify: restart ngx
tags: restart ngx - name: cp repo
copy: src=nginx.repo dest=/etc/yum.repos.d/ - name: ingx
yum: name=nginx state=installed - name: chang ngx user
shell: sed -i '/^user/c user www;' /etc/nginx/nginx.conf - include: load.yml
tags: load - name: start ngx
service: name=nginx state=started enabled=yes
下载产品

[root@ansible yngx]# cat tasks/load.yml
- name: load pag
get_url: url={{ item }} dest=/code/
with_items:
- https://cn.wordpress.org/wordpress-5.0.2-zh_CN.tar.gz
- http://ahdx.down.chinaz.com/201605/WeCenter_v3.1.9.zip
- http://download.edusoho.com/edusoho-8.2.17.tar.gz
解压
- name: tar
unarchive: src=files/{{ item }} dest=/code/ owner={{ user }} group={{ group }} copy=yes
with_items:
- wordpress-5.0.-zh_CN.tar.gz
- edusoho-8.2..tar.gz
#- WeCenter_v3.1.9.zip
tags: load
nginx配置文件
[root@ansible files]# cat blog.conf
server {
listen ;
server_name blog.oldboy.com;
root /code/wordpress;
index index.php index.html; location ~ \.php$ {
root /code/wordpress;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

安装php7.2剧本

[root@ansible roles]# tree yphp
yphp
├── files
├── handlers
│   └── main.yml
├── tasks
│   └── main.yml
└── vars
[root@ansible tasks]# cat main.yml 
- name: install three epel
yum: name=https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm state=installed
- name: install three epel
yum: name=https://mirror.webtatic.com/yum/el7/webtatic-release.rpm state=installed - name: chang www
shell: sed -i '/^user/c user = www' /etc/php-fpm.d/www.conf - name: chang www
shell: sed -i '/^group/c group = www' /etc/php-fpm.d/www.conf - name: del pag
yum: name={{ item }} state=absent
with_items:
- php-mysql-5.4
- php
- php-fpm
- php-common - name: insatll php
yum: name={{ item }} state=latest
with_items:
- php72w
- php72w-cli
- php72w-common
- php72w-devel
- php72w-embedded
- php72w-gd
- php72w-mbstring
- php72w-pdo
- php72w-xml
- php72w-fpm
- php72w-mysqlnd
- php72w-opcache - name: start php
service: name=php-fpm state=started enabled=yes

用户目录,基础任务

[root@ansible roles]# tree base/
base/
├── defaults
├── tasks
│   ├── dir.yml
│   ├── main.yml
│   └── user.yml
└── vars
└── main.yml

[root@ansible base]# cat vars/main.yml
user: www
group: www
appdir: /code

[root@ansible tasks]# cat dir.yml
- name: create {{ dir }}
  file: path=/code state=directory

[root@ansible tasks]# cat dir.yml
- name: create {{ dir }}
file: path=/code state=directory
[root@ansible tasks]# cat user.yml
- name: create group
  group: name={{ group }} gid=777 system=yes
- name: create user
  user: name={{ user }} uid=777 system=yes group={{ group }}

[root@ansible tasks]# cat main.yml
- include: dir.yml
- include: user.yml

命令行可执行 剧本里定义的 tags

ansible-playbook -C -t cp lnmp.yml

roles的更多相关文章

  1. MongoDB的内置角色 Built-In Roles

    关于芒果的权限控制说白了就是定义 Role(角色) 来控制对数据库进行的操作(调用的方法比如查询方法find). 系统内置的Role分为 以下几大类: Database User Roles 这个是针 ...

  2. Apple Developer Program Roles Overview

    Apple Developer Program Roles Overview There are three roles that can be assigned to Apple Developer ...

  3. Show Roles Assigned to a Specific User

     Here is a query that I often use to lookup Roles assigned to a specific PeopleSoft user. At run tim ...

  4. Developers, do consider different user roles! - A bad experience with cron

    The Story: Last week, I found one of our embedded arm linux device  ran out of flash space( totally ...

  5. [Hive - LanguageManual] Create/Drop/Grant/Revoke Roles and Privileges / Show Use

    Create/Drop/Grant/Revoke Roles and Privileges Hive Default Authorization - Legacy Mode has informati ...

  6. Ansible系列(五):playbook应用和roles自动化批量安装示例

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

  7. IdentityServer4 指定角色授权(Authorize(Roles="admin"))

    1. 业务场景 IdentityServer4 授权配置Client中的AllowedScopes,设置的是具体的 API 站点名字,也就是使用方设置的ApiName,示例代码: //授权中心配置 n ...

  8. ansible roles

    roles 特点 目录结构清晰 重复调用相同的任务 目录结构相同 web - tasks - install.yml - copfile.yml - start.yml -  main.yml - t ...

  9. ansible基础-roles

    一 简介 注:本文demo使用ansible2.7稳定版 在我看来,role是task文件.变量文件.handlers文件的集合体,这个集合体的显著特点是:可移植性和可重复执行性. 实践中,通常我们以 ...

  10. Ansible系列之roles使用说明

    roles(角色)介绍 ansible自1.2版本开始引入的新特性,用于层次性,结构化地组织playbook.roles能够根据层次型结构自动装载变量文件.tasks以及handlers等.要使用ro ...

随机推荐

  1. 【minikube & helm】

    minikube是用来快速搭建一个单机kubernetes集群的工具. https://www.cnblogs.com/liyuanhong/p/10143157.html helm是kubernet ...

  2. 个人博客搭建全记录(Hexo,Github)

    搭建过程主要借鉴小歪的博客 博客主题airclod Hexo,Github建站记录 1. 准备 Github账号 注册登陆Github 创建Repository,Repository Name就是Yo ...

  3. Andrew Ng机器学习课程9

    Andrew Ng机器学习课程9 首先以一个工匠为例,说明要成为一个出色的工匠,就需要掌握各种工具的使用,才能知道在具体的任务中选择什么工具来做.所以今天要讲的就是机器学习的理论部分. bias va ...

  4. 关于Form、ModelForm的一些操作(持续更新)

    1.前端循环:后端传到前端的form是可以循环的,以此获得想要展示的元素 <form method="post" class="form-horizontal&qu ...

  5. Python机器学习基础教程-第2章-监督学习之线性模型

    前言 本系列教程基本就是摘抄<Python机器学习基础教程>中的例子内容. 为了便于跟踪和学习,本系列教程在Github上提供了jupyter notebook 版本: Github仓库: ...

  6. 032 Android智能下拉刷新框架-SmartRefreshLayout+RecyclerView的使用

    1.SmartRefreshLayout介绍 SmartRefreshLayout的目标是打造一个强大,稳定,成熟的下拉刷新框架,并集成各种的炫酷.多样.实用.美观的Header和Footer. 正如 ...

  7. hashCode和identifyHashCode的区别

    API: System类提供一个identifyHashCode(Object o)的方法,该方法返回指定对象的精确hashCode值,也是根据该对象的地址计算得到的HashCode值.当某个类的ha ...

  8. SDK的使用步骤

    SDK包括三种类型文件: (1).头文件(.h) (2).库文件(.lib) (3).动态库(.dll) 第一步:在项目目录中新建一个Libs文件夹,再在该文件夹中分别新建inc文件夹和lib文件夹, ...

  9. 随记sqlserver学习笔记

    create database libraryDBgouse libraryDBgo--读者信息表create table ReaderInfo( ReaderId int not null prim ...

  10. 图像处理库 Pillow与PIL

    PIL只支持python2的版本到2.7: Python imaging Library : Pillow 是PIL派生的一个分支,支持3以上Python版本. 命令使用pip安装: pip inst ...