Vagrant+ansible로 LAMP 환경 구축(4)
14725 단어 ansible-playbookPHP7
여기까지
Vagrant에서 CentOS7을 시작하고 ansible-playbook을 사용하여 LAMP 환경을 설치했습니다.
ansible-playbook을 실행하는 데 성공했지만 다음과 같은 문제가 있습니다.
→ 이것은 단순히 표준 OS 버전을 설치했기 때문에 PHP7을 설치하도록 절차를 수정하면 해결해야합니다
→ 어쩌면 php-mysql을 설치 한 후 MariaDB를 삭제했기 때문에 의존성의 영향으로 함께 삭제되었습니다 ...?
이번에는 첫 번째 PHP7에 해당합니다.
두 가지 모두 해결되었으므로 내용을 정리합니다.
PHP7 대응
playbook 수정
여기 을 참고로 playbook을 수정해 본다
playbook.yml (발췌)
- name: epel リポジトリ追加
yum: name=https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
- name: remi リポジトリ追加
yum: name=https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
- name: PHP インストール
yum: name={{item}}
with_items:
- php70w
- php70w-mbstring
- php70w-mysql
notify:
- restart httpd
- name: PHPをタイムゾーンの設定
replace: >
dest=/etc/php.ini
regexp="^;date\.timezone ="
replace="date.timezone = Asia/Tokyo"
playbook 실행
MySQL 부분을 주석 처리 한 상태에서 playbook을 다시 실행하십시오.
하지만 그 전에 vagrant의 이미지를 깨끗한 상태로 되돌리기 때문에,
vagrant destroy
→ vagrant up
한다PLAY ***************************************************************************
TASK [setup] *******************************************************************
ok: [10.0.0.5]
TASK [OS 最新化] ******************************************************************
changed: [10.0.0.5]
TASK [DeveloperTool インストール] ****************************************************
changed: [10.0.0.5]
TASK [vim インストール] **************************************************************
changed: [10.0.0.5]
TASK [Apache インストール] ***********************************************************
changed: [10.0.0.5]
TASK [Apache 起動] ***************************************************************
changed: [10.0.0.5]
TASK [.htaccessを有効にする] *********************************************************
changed: [10.0.0.5]
TASK [epel リポジトリ追加] ************************************************************
changed: [10.0.0.5]
TASK [remi リポジトリ追加] ************************************************************
changed: [10.0.0.5]
TASK [PHP インストール] **************************************************************
changed: [10.0.0.5] => (item=[u'php70w', u'php70w-mbstring', u'php70w-mysql'])
TASK [PHPをタイムゾーンの設定] ***********************************************************
changed: [10.0.0.5]
RUNNING HANDLER [restart httpd] ************************************************
changed: [10.0.0.5]
PLAY RECAP *********************************************************************
10.0.0.5 : ok=12 changed=11 unreachable=0 failed=0
성공적으로 처리가 완료되었으므로 다시 info.php를 만들어 브라우저에서 확인해보십시오.
PHP7 설치는 해결! !
MySQL5.7 대응
지금까지의 시점에서 phpinfo 의 내용을 확인하면(자) , 올바르게 pdo_mysql 가 들어가 있으므로 , 이 후에 mariadb-libs 를 삭제하고 있는 것이 역시 문제라고 생각된다
따라서 설치 순서를 바꾸고 다시 실행해 봅니다.
playbook 수정
playbook.yml
- hosts: DevServer1
become: yes
tasks:
#
# システム
#
- name: OS 最新化
yum: name=* state=latest
- name: DeveloperTool インストール
yum: name="@Development tools"
- name: vim インストール
yum: name=vim
#
# MySQL 5.7
#
- name: MariaDB 削除
yum: name=mariadb-libs state=removed
- name: MySQL5.7 リポジトリ追加
yum: name=http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm state=present
- name: MySQL5.7 インストール
yum: name=mysql-community-server
- name: MySQL5.7 起動
service: name=mysqld state=started enabled=yes
#
# Apache
#
- name: Apache インストール
yum: name=httpd
- name: Apache 起動
service: name=httpd state=started enabled=yes
- name: .htaccessを有効にする
replace:
dest=/etc/httpd/conf/httpd.conf
regexp='AllowOverride None'
replace='AllowOverride All'
notify:
- restart httpd
#
# PHP
#
- name: epel リポジトリ追加
yum: name=https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm state=present
- name: remi リポジトリ追加
yum: name=https://mirror.webtatic.com/yum/el7/webtatic-release.rpm state=present
- name: PHP インストール
yum: name={{item}}
with_items:
- php70w
- php70w-mbstring
- php70w-mysql
notify:
- restart httpd
- name: PHPをタイムゾーンの設定
replace: >
dest=/etc/php.ini
regexp="^;date\.timezone ="
replace="date.timezone = Asia/Tokyo"
handlers:
- name: restart httpd
service: name=httpd state=restarted
playbook 실행
다시
vagrant destroy
→ vagrant up
하고 playbook 실행PLAY ***************************************************************************
TASK [setup] *******************************************************************
ok: [10.0.0.5]
TASK [OS 最新化] ******************************************************************
changed: [10.0.0.5]
TASK [DeveloperTool インストール] ****************************************************
changed: [10.0.0.5]
TASK [vim インストール] **************************************************************
changed: [10.0.0.5]
TASK [MariaDB 削除] **************************************************************
changed: [10.0.0.5]
TASK [MySQL5.7 リポジトリ追加] ********************************************************
changed: [10.0.0.5]
TASK [MySQL5.7 インストール] *********************************************************
changed: [10.0.0.5]
TASK [MySQL5.7 起動] *************************************************************
changed: [10.0.0.5]
TASK [Apache インストール] ***********************************************************
changed: [10.0.0.5]
TASK [Apache 起動] ***************************************************************
changed: [10.0.0.5]
TASK [.htaccessを有効にする] *********************************************************
changed: [10.0.0.5]
TASK [epel リポジトリ追加] ************************************************************
changed: [10.0.0.5]
TASK [remi リポジトリ追加] ************************************************************
changed: [10.0.0.5]
TASK [PHP インストール] **************************************************************
changed: [10.0.0.5] => (item=[u'php70w', u'php70w-mbstring', u'php70w-mysql'])
TASK [PHPをタイムゾーンの設定] ***********************************************************
changed: [10.0.0.5]
RUNNING HANDLER [restart httpd] ************************************************
changed: [10.0.0.5]
PLAY RECAP *********************************************************************
10.0.0.5 : ok=16 changed=15 unreachable=0 failed=0
제대로 작동하고 phpinfo에서도 pro_mysql이 표시되었습니다.
MySQL에 적당한 DB, 테이블을 작성해, 거기에 대해서 SELECT 하는 샘플 소스를 구현해, 브라우저로부터 실행해 보면 데이터가 표시되었으므로, LAMP 환경의 구축은 일단 이것으로 완료로 한다
Reference
이 문제에 관하여(Vagrant+ansible로 LAMP 환경 구축(4)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/k-serenade/items/0ab59f9563493f0cf293텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)