Web Developer's Struggle Memories

日々の業務から思ったこと、学んだことを書き連ねていきます。

CodeIgniter4-dev(Vagrant, CentOS7, Nginx, MariaDB)の開発環境を作ったメモ

To. 未来の私

おそらくあなたはこの記事に再び訪れるでしょう。

そのために書き残しておきます。

過去の自分に感謝しなさい。

本題

CentOS7のインストール

# boxの追加
$ vagrant box add centos71 https://github.com/CommanderK5/packer-centos-template/releases/download/0.7.1/vagrant-centos-7.1.box

# vagrantの初期設定
$ vagrant init

今回はVMのipの設定をconfig.vm.network "private_network", ip: "192.168.33.10"とした。

諸々のミドルウェアをインストール

GitHub - k-kuwahara/create-development-environment

このリポジトリを利用して、以下のミドルウェアをインストール。

  • Nginx
  • PHP-FPM
  • Composer
  • Git
  • MariaDB
  • Vim
  • dos2unix(これは個人的によく使うコマンド)
# ansibleのインストール
$ sudo yum install -y epel-release
$ sudo yum install -y ansible
# ansibleのインストール確認
$ ansible --version

# ミドルウェアのインストール
$ cd create-development-environment
$ ansible-playbook playbook.yml -i hosts

# Nginxのインストール, 起動確認
$ sudo systemctl status nginx.service

# PHP-FPMのインストール, 起動確認
$ sudo php-fpm -t
$ php -v

# Composerのインストール確認
$ composer --version

# Gitのインストール確認
$ git --version

# Vimのインストール確認
$ vim

CodeIgniter4-devのインストール

▼ソースを取得

github.com

こっからソースをダウンロード。(git clone でも可) 適当なディレクトリに配置。

Nginxにてバーチャルホストの設定

以下は、過去のあなたの/etc/nginx/conf.d/app.confの設定例。

server {
    root         /vagrant/app_name/public
    listen       80;
    server_name  hogehoge.com;
    access_log   /var/log/nginx/default.access.log main;
    error_log    /var/log/nginx/default.error.log warn;


    location / {
        try_files $uri $uri/ /index.php?/$request_uri;
        index index.php index.html index.htm;
        expires 1m;
    }

    if ($request_uri !~ ^/(index\.php|assets|files|robots\.txt)) {
        rewrite ^/(.*)$ /index.php/$1 last;
    }

    location ~ \.php$ {
        fastcgi_index  index.php;
        fastcgi_pass   unix:/var/run/php-fpm/default.sock;
        fastcgi_param  SCRIPT_FILENAME  $doument_root/$fastcgi_script_name;
        include        fastcgi_params;
    }
}

ホストマシンにてhostsの設定

192.168.33.10  hogehoge.com

以上です。未来でも頑張ってください。