いつかのために

自作サイトができるまで、メモ置き場として使っているブログ

CentOS7.5にLaravelをインストール

こんどこそLaravelをインストールします
インストール 5.7 Laravel

composer global require "laravel/installer"

Changed current directory to /home/{ユーザー名}/.config/composer
Using version ^2.0 for laravel/installer
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - laravel/installer v2.0.1 requires ext-zip * -> the requested PHP extension zip is missing from your system.
    - laravel/installer v2.0.0 requires ext-zip * -> the requested PHP extension zip is missing from your system.
    - Installation request for laravel/installer ^2.0 -> satisfiable by laravel/installer[v2.0.0, v2.0.1].

  To enable extensions, verify that they are enabled in your .ini files:
    - /etc/php.ini
    - /etc/php.d/20-bz2.ini
    - /etc/php.d/20-calendar.ini
    - /etc/php.d/20-ctype.ini
    - /etc/php.d/20-curl.ini
    - /etc/php.d/20-dom.ini
    - /etc/php.d/20-exif.ini
    - /etc/php.d/20-fileinfo.ini
    - /etc/php.d/20-ftp.ini
    - /etc/php.d/20-gd.ini
    - /etc/php.d/20-gettext.ini
    - /etc/php.d/20-iconv.ini
    - /etc/php.d/20-json.ini
    - /etc/php.d/20-mbstring.ini
    - /etc/php.d/20-mysqlnd.ini
    - /etc/php.d/20-pdo.ini
    - /etc/php.d/20-phar.ini
    - /etc/php.d/20-simplexml.ini
    - /etc/php.d/20-sockets.ini
    - /etc/php.d/20-sqlite3.ini
    - /etc/php.d/20-tokenizer.ini
    - /etc/php.d/20-xml.ini
    - /etc/php.d/20-xmlwriter.ini
    - /etc/php.d/20-xsl.ini
    - /etc/php.d/30-mcrypt.ini
    - /etc/php.d/30-mysqli.ini
    - /etc/php.d/30-pdo_mysql.ini
    - /etc/php.d/30-pdo_sqlite.ini
    - /etc/php.d/30-wddx.ini
    - /etc/php.d/30-xmlreader.ini
    - /etc/php.d/30-xmlrpc.ini
    - /etc/php.d/50-mysql.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

Installation failed, deleting ./composer.json.

ええ…。
失敗してしまいました。

the requested PHP extension zip is missing from your system.

PHP拡張機能のzipが私の環境にはないみたいです。

sheefelt.hatenablog.com
こちらの記事でphp7.2をインストールしたので、このバージョンに合わせます。

sudo yum -y install --enablerepo=remi,remi-php72 php-zip

Loaded plugins: fastestmirror, langpacks
Determining fastest mirrors
epel/x86_64/metalink                                           | 4.2 kB  00:00:00     
epel-debuginfo/x86_64/metalink                                 | 4.3 kB  00:00:00     
epel-source/x86_64/metalink                                    | 4.2 kB  00:00:00     
 * base: ftp.iij.ad.jp
 * epel: ftp.iij.ad.jp
 * epel-debuginfo: ftp.iij.ad.jp
 * epel-source: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * remi: ftp.riken.jp
 * remi-php72: ftp.riken.jp
 * remi-safe: ftp.riken.jp
 * updates: ftp.iij.ad.jp
base                                                           | 3.6 kB  00:00:00     
epel                                                           | 3.2 kB  00:00:00     
epel-debuginfo                                                 | 1.5 kB  00:00:00     
epel-source                                                    | 2.0 kB  00:00:00     
extras                                                         | 3.4 kB  00:00:00     
mariadb                                                        | 2.9 kB  00:00:00     
remi                                                           | 2.9 kB  00:00:00     
remi-php72                                                     | 2.9 kB  00:00:00     
remi-safe                                                      | 2.9 kB  00:00:00     
updates                                                        | 3.4 kB  00:00:00     
(1/9): epel/x86_64/updateinfo                                  | 947 kB  00:00:00     
(2/9): epel/x86_64/primary                                     | 3.6 MB  00:00:00     
(3/9): epel-debuginfo/x86_64/primary                           | 509 kB  00:00:00     
(4/9): epel-source/x86_64/updateinfo                           | 947 kB  00:00:00     
(5/9): epel-source/x86_64/primary                              | 1.8 MB  00:00:00     
(6/9): remi-safe/primary_db                                    | 1.3 MB  00:00:00     
(7/9): remi-php72/primary_db                                   | 196 kB  00:00:00     
(8/9): updates/7/x86_64/primary_db                             | 5.2 MB  00:00:00     
(9/9): remi/primary_db                                         | 2.2 MB  00:00:00     
epel                                                                      12685/12685
epel-debuginfo                                                              2818/2818
epel-source                                                                 6820/6820
Resolving Dependencies
--> Running transaction check
---> Package php-pecl-zip.x86_64 0:1.15.3-1.el7.remi.7.2 will be installed
--> Processing Dependency: libzip5(x86-64) >= 1.5.1 for package: php-pecl-zip-1.15.3-1.el7.remi.7.2.x86_64
--> Processing Dependency: libzip.so.5()(64bit) for package: php-pecl-zip-1.15.3-1.el7.remi.7.2.x86_64
--> Running transaction check
---> Package libzip5.x86_64 0:1.5.1-1.el7.remi will be installed
--> Finished Dependency Resolution

Dependencies Resolved

======================================================================================
 Package            Arch         Version                       Repository        Size
======================================================================================
Installing:
 php-pecl-zip       x86_64       1.15.3-1.el7.remi.7.2         remi-php72        51 k
Installing for dependencies:
 libzip5            x86_64       1.5.1-1.el7.remi              remi              55 k

Transaction Summary
======================================================================================
Install  1 Package (+1 Dependent package)

Total download size: 106 k
Installed size: 280 k
Downloading packages:
(1/2): libzip5-1.5.1-1.el7.remi.x86_64.rpm                     |  55 kB  00:00:00     
(2/2): php-pecl-zip-1.15.3-1.el7.remi.7.2.x86_64.rpm           |  51 kB  00:00:00     
--------------------------------------------------------------------------------------
Total                                                    243 kB/s | 106 kB  00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : libzip5-1.5.1-1.el7.remi.x86_64                                    1/2 
  Installing : php-pecl-zip-1.15.3-1.el7.remi.7.2.x86_64                          2/2 
  Verifying  : libzip5-1.5.1-1.el7.remi.x86_64                                    1/2 
  Verifying  : php-pecl-zip-1.15.3-1.el7.remi.7.2.x86_64                          2/2 

Installed:
  php-pecl-zip.x86_64 0:1.15.3-1.el7.remi.7.2                                         

Dependency Installed:
  libzip5.x86_64 0:1.5.1-1.el7.remi                                                   

Complete!

できました!

もう一度、Laravelのインストール用のコマンドを打ちます。
composer global require "laravel/installer"

Changed current directory to /home/{ユーザー名}/.config/composer
Using version ^2.0 for laravel/installer
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 10 installs, 0 updates, 0 removals
  - Installing symfony/process (v4.1.4): Downloading (100%)         
  - Installing symfony/polyfill-ctype (v1.9.0): Downloading (100%)         
  - Installing symfony/filesystem (v4.1.4): Downloading (100%)         
  - Installing symfony/polyfill-mbstring (v1.9.0): Downloading (100%)         
  - Installing symfony/console (v4.1.4): Downloading (100%)         
  - Installing guzzlehttp/promises (v1.3.1): Downloading (100%)         
  - Installing psr/http-message (1.0.1): Downloading (100%)         
  - Installing guzzlehttp/psr7 (1.4.2): Downloading (100%)         
  - Installing guzzlehttp/guzzle (6.3.3): Downloading (100%)         
  - Installing laravel/installer (v2.0.1): Downloading (100%)         
symfony/console suggests installing psr/log-implementation (For using the console logger)
symfony/console suggests installing symfony/event-dispatcher
symfony/console suggests installing symfony/lock
guzzlehttp/guzzle suggests installing psr/log (Required for using the Log middleware)
Writing lock file
Generating autoload files

Changed current directory to /home/{ユーザー名}/.config/composer

とあるので、そこにLaravelがおかれるのかと思いきや /home/{ユーザー名}/.config/composer/vendor/bin こっちみたいです。

ようやく準備が整いましたので、公式ドキュメントの流れに沿って、

インストールし終えたら、laravel newコマンドにより、指定したディレクトリに真新しいLaravelプロジェクトを作成できます。例えば、laravel new blogを実行すると、blogという名前のディレクトへ、必要とするパッケージが全部揃った、真新しいLaravelがインストールされます。

laravel new blog

cd /var/www/html/
laravel new blog

-bash: laravel: command not found

(つд⊂)エーン
パスを通す必要があります。
export PATH="/home/{ユーザー名}/.config/composer/vendor/bin:$PATH"

このパスは以下を基準に入力しました。

/home/{ユーザー名}/.config/composer/vendor/bin こっちみたいです。

では今度こそ…。
laravel new blog

Crafting application...
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Package operations: 71 installs, 0 updates, 0 removals
  - Installing doctrine/inflector (v1.3.0): Downloading (100%)         
  - Installing doctrine/lexer (v1.0.1): Downloading (100%)         
  - Installing dragonmantank/cron-expression (v2.2.0): Downloading (100%)         
  - Installing erusev/parsedown (1.7.1): Downloading (100%)         
  - Installing vlucas/phpdotenv (v2.5.1): Downloading (100%)         
  - Installing symfony/css-selector (v4.1.4): Downloading (100%)         
  - Installing tijsverkoyen/css-to-inline-styles (2.2.1): Downloading (100%)         
  - Installing symfony/polyfill-php72 (v1.9.0): Downloading (100%)         
  - Installing symfony/polyfill-mbstring (v1.9.0): Loading from cache
  - Installing symfony/var-dumper (v4.1.4): Downloading (100%)         
  - Installing symfony/routing (v4.1.4): Downloading (100%)         
  - Installing symfony/process (v4.1.4): Loading from cache
  - Installing symfony/polyfill-ctype (v1.9.0): Loading from cache
  - Installing symfony/http-foundation (v4.1.4): Downloading (100%)         
  - Installing symfony/event-dispatcher (v4.1.4): Downloading (100%)         
  - Installing psr/log (1.0.2): Downloading (100%)         
  - Installing symfony/debug (v4.1.4): Downloading (100%)         
  - Installing symfony/http-kernel (v4.1.4): Downloading (100%)         
  - Installing symfony/finder (v4.1.4): Downloading (100%)         
  - Installing symfony/console (v4.1.4): Loading from cache
  - Installing egulias/email-validator (2.1.5): Downloading (100%)         
  - Installing swiftmailer/swiftmailer (v6.1.3): Downloading (100%)         
  - Installing paragonie/random_compat (v9.99.99): Downloading (100%)         
  - Installing ramsey/uuid (3.8.0): Downloading (100%)         
  - Installing psr/simple-cache (1.0.1): Downloading (100%)         
  - Installing psr/container (1.0.0): Downloading (100%)         
  - Installing symfony/translation (v4.1.4): Downloading (100%)         
  - Installing nesbot/carbon (1.33.0): Downloading (100%)         
  - Installing monolog/monolog (1.23.0): Downloading (100%)         
  - Installing league/flysystem (1.0.47): Downloading (100%)         
  - Installing laravel/framework (v5.7.3): Downloading (100%)         
  - Installing fideloper/proxy (4.0.0): Downloading (100%)         
  - Installing jakub-onderka/php-console-color (0.1): Downloading (100%)         
  - Installing nikic/php-parser (v4.0.3): Downloading (100%)         
  - Installing jakub-onderka/php-console-highlighter (v0.3.2): Downloading (connectingDownloading (100%)         
  - Installing dnoegel/php-xdg-base-dir (0.1): Downloading (100%)         
  - Installing psy/psysh (v0.9.8): Downloading (100%)         
  - Installing laravel/tinker (v1.0.7): Downloading (100%)         
  - Installing beyondcode/laravel-dump-server (1.2.1): Downloading (100%)         
  - Installing fzaninotto/faker (v1.8.0): Downloading (100%)         
  - Installing hamcrest/hamcrest-php (v2.0.0): Downloading (100%)         
  - Installing mockery/mockery (1.1.0): Downloading (100%)         
  - Installing filp/whoops (2.2.1): Downloading (100%)         
  - Installing nunomaduro/collision (v2.0.3): Downloading (100%)         
  - Installing webmozart/assert (1.3.0): Downloading (100%)         
  - Installing phpdocumentor/reflection-common (1.0.1): Downloading (100%)         
  - Installing phpdocumentor/type-resolver (0.4.0): Downloading (100%)         
  - Installing phpdocumentor/reflection-docblock (4.3.0): Downloading (100%)         
  - Installing phpunit/php-token-stream (3.0.0): Downloading (100%)         
  - Installing sebastian/version (2.0.1): Downloading (100%)         
  - Installing sebastian/resource-operations (1.0.0): Downloading (100%)         
  - Installing sebastian/recursion-context (3.0.0): Downloading (100%)         
  - Installing sebastian/object-reflector (1.1.1): Downloading (100%)         
  - Installing sebastian/object-enumerator (3.0.3): Downloading (100%)         
  - Installing sebastian/global-state (2.0.0): Downloading (100%)         
  - Installing sebastian/exporter (3.1.0): Downloading (100%)         
  - Installing sebastian/environment (3.1.0): Downloading (100%)         
  - Installing sebastian/diff (3.0.1): Downloading (100%)         
  - Installing sebastian/comparator (3.0.2): Downloading (100%)         
  - Installing phpunit/php-timer (2.0.0): Downloading (100%)         
  - Installing phpunit/php-text-template (1.2.1): Downloading (100%)         
  - Installing phpunit/php-file-iterator (2.0.2): Downloading (100%)         
  - Installing theseer/tokenizer (1.1.0): Downloading (100%)         
  - Installing sebastian/code-unit-reverse-lookup (1.0.1):Downloading (100%)         )
  - Installing phpunit/php-code-coverage (6.0.7): Downloading (100%)         
  - Installing doctrine/instantiator (1.1.0): Downloading (100%)         
  - Installing phpspec/prophecy (1.8.0): Downloading (100%)         
  - Installing phar-io/version (2.0.1): Downloading (100%)         
  - Installing phar-io/manifest (1.0.3): Downloading (100%)         
  - Installing myclabs/deep-copy (1.8.1): Downloading (100%)         
  - Installing phpunit/phpunit (7.3.5): Downloading (100%)         
symfony/var-dumper suggests installing ext-intl (To show region name in time zone dump)
symfony/routing suggests installing doctrine/annotations (For using the annotation loader)
symfony/routing suggests installing symfony/config (For using the all-in-one router or any loader)
symfony/routing suggests installing symfony/dependency-injection (For loading routes from a service)
symfony/routing suggests installing symfony/expression-language (For using expression matching)
symfony/routing suggests installing symfony/yaml (For using the YAML loader)
symfony/event-dispatcher suggests installing symfony/dependency-injection
symfony/http-kernel suggests installing symfony/browser-kit
symfony/http-kernel suggests installing symfony/config
symfony/http-kernel suggests installing symfony/dependency-injection
symfony/console suggests installing symfony/lock
egulias/email-validator suggests installing ext-intl (PHP Internationalization Libraries are required to use the SpoofChecking validation)
swiftmailer/swiftmailer suggests installing ext-intl (Needed to support internationalized email addresses)
swiftmailer/swiftmailer suggests installing true/punycode (Needed to support internationalized email addresses, if ext-intl is not installed)
paragonie/random_compat suggests installing ext-libsodium (Provides a modern crypto API that can be used to generate random bytes.)
ramsey/uuid suggests installing ext-libsodium (Provides the PECL libsodium extension for use with the SodiumRandomGenerator)
ramsey/uuid suggests installing ext-uuid (Provides the PECL UUID extension for use with the PeclUuidTimeGenerator and PeclUuidRandomGenerator)
ramsey/uuid suggests installing ircmaxell/random-lib (Provides RandomLib for use with the RandomLibAdapter)
ramsey/uuid suggests installing moontoast/math (Provides support for converting UUID to 128-bit integer (in string form).)
ramsey/uuid suggests installing ramsey/uuid-console (A console application for generating UUIDs with ramsey/uuid)
ramsey/uuid suggests installing ramsey/uuid-doctrine (Allows the use of Ramsey\Uuid\Uuid as Doctrine field type.)
symfony/translation suggests installing symfony/config
symfony/translation suggests installing symfony/yaml
monolog/monolog suggests installing aws/aws-sdk-php (Allow sending log messages to AWS services like DynamoDB)
monolog/monolog suggests installing doctrine/couchdb (Allow sending log messages to a CouchDB server)
monolog/monolog suggests installing ext-amqp (Allow sending log messages to an AMQP server (1.0+ required))
monolog/monolog suggests installing ext-mongo (Allow sending log messages to a MongoDB server)
monolog/monolog suggests installing graylog2/gelf-php (Allow sending log messages to a GrayLog2 server)
monolog/monolog suggests installing mongodb/mongodb (Allow sending log messages to a MongoDB server via PHP Driver)
monolog/monolog suggests installing php-amqplib/php-amqplib (Allow sending log messages to an AMQP server using php-amqplib)
monolog/monolog suggests installing php-console/php-console (Allow sending log messages to Google Chrome)
monolog/monolog suggests installing rollbar/rollbar (Allow sending log messages to Rollbar)
monolog/monolog suggests installing ruflin/elastica (Allow sending log messages to an Elastic Search server)
monolog/monolog suggests installing sentry/sentry (Allow sending log messages to a Sentry server)
league/flysystem suggests installing league/flysystem-aws-s3-v2 (Allows you to use S3 storage with AWS SDK v2)
league/flysystem suggests installing league/flysystem-aws-s3-v3 (Allows you to use S3 storage with AWS SDK v3)
league/flysystem suggests installing league/flysystem-azure (Allows you to use Windows Azure Blob storage)
league/flysystem suggests installing league/flysystem-cached-adapter (Flysystem adapter decorator for metadata caching)
league/flysystem suggests installing league/flysystem-eventable-filesystem (Allows you to use EventableFilesystem)
league/flysystem suggests installing league/flysystem-rackspace (Allows you to use Rackspace Cloud Files)
league/flysystem suggests installing league/flysystem-sftp (Allows you to use SFTP server storage via phpseclib)
league/flysystem suggests installing league/flysystem-webdav (Allows you to use WebDAV storage)
league/flysystem suggests installing league/flysystem-ziparchive (Allows you to use ZipArchive adapter)
league/flysystem suggests installing spatie/flysystem-dropbox (Allows you to use Dropbox storage)
league/flysystem suggests installing srmklive/flysystem-dropbox-v2 (Allows you to use Dropbox storage for PHP 5 applications)
laravel/framework suggests installing aws/aws-sdk-php (Required to use the SQS queue driver and SES mail driver (^3.0).)
laravel/framework suggests installing doctrine/dbal (Required to rename columns and drop SQLite columns (^2.6).)
laravel/framework suggests installing ext-posix (Required to use all features of the queue worker.)
laravel/framework suggests installing guzzlehttp/guzzle (Required to use the Mailgun and Mandrill mail drivers and the ping methods on schedules (^6.0).)
laravel/framework suggests installing league/flysystem-aws-s3-v3 (Required to use the Flysystem S3 driver (^1.0).)
laravel/framework suggests installing league/flysystem-cached-adapter (Required to use the Flysystem cache (^1.0).)
laravel/framework suggests installing league/flysystem-rackspace (Required to use the Flysystem Rackspace driver (^1.0).)
laravel/framework suggests installing league/flysystem-sftp (Required to use the Flysystem SFTP driver (^1.0).)
laravel/framework suggests installing moontoast/math (Required to use ordered UUIDs (^1.1).)
laravel/framework suggests installing nexmo/client (Required to use the Nexmo transport (^1.0).)
laravel/framework suggests installing pda/pheanstalk (Required to use the beanstalk queue driver (^3.0).)
laravel/framework suggests installing predis/predis (Required to use the redis cache and queue drivers (^1.0).)
laravel/framework suggests installing pusher/pusher-php-server (Required to use the Pusher broadcast driver (^3.0).)
laravel/framework suggests installing symfony/dom-crawler (Required to use most of the crawler integration testing tools (^4.1).)
laravel/framework suggests installing symfony/psr-http-message-bridge (Required to psr7 bridging features (^1.0).)
psy/psysh suggests installing ext-pdo-sqlite (The doc command requires SQLite to work.)
psy/psysh suggests installing ext-posix (If you have PCNTL, you'll want the POSIX extension as well.)
psy/psysh suggests installing hoa/console (A pure PHP readline implementation. You'll want this if your PHP install doesn't already support readline or libedit.)
filp/whoops suggests installing whoops/soap (Formats errors as SOAP responses)
sebastian/global-state suggests installing ext-uopz (*)
phpunit/php-code-coverage suggests installing ext-xdebug (^2.6.0)
phpunit/phpunit suggests installing ext-soap (*)
phpunit/phpunit suggests installing ext-xdebug (*)
phpunit/phpunit suggests installing phpunit/php-invoker (^2.0)
Generating optimized autoload files
> @php -r "file_exists('.env') || copy('.env.example', '.env');"
> @php artisan key:generate
Application key [base64:q1AerhBgkDziFOVX2Vn2BstNg8wvEk1PA3rPwxdS4zk=] set successfully.
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover
Discovered Package: beyondcode/laravel-dump-server
Discovered Package: fideloper/proxy
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
Application ready! Build something amazing.

ls

blog

おお!
これで!ようやくLaravelが入りました!

進捗

Laravelのインストールが完了した。

RLoginの設定とか

RLoginの設定をしたのでメモ代わりの記事です。
こちらのサイトを参考にさせていただきました。 jyn.jp

カラー配色や拡張機能は変更しませんでした。 フォントはこちらを利用しました。
大学時代からずっとこのフォント使い続けてます。 github.com

RLogin自体は1ヵ月くらい前から仕事場で使い始めて、
便利だったのでプライベートでも採用したのですが、
背景に接続先を表示できる機能 を初めて知りました…。
自分がRLogin上で設定したエントリー名も表示されるので、とってもわかりやすいです。

仕事場では開発環境と本番環境を間違えないように、
本番環境用に 赤くべた塗りした背景に白文字で「本番環境」と書かれた画像 を作って、
それを背景画像に設定していました…w
まぁ、わかりやすくていいですよね。

CentOS7.5にComposerを導入

Laravelを入れるためにドキュメントを確認。

インストール 5.7 Laravel

LaravelはComposerを依存パッケージの管理に使用しています。ですから、Laravelを始める前に、自分の開発機にComposerを確実にインストールしておいてください。

というわけでComposerのサイトに行きました。

getcomposer.org

Documentation を読み進めていくと、「Getting Started を見て」と言われたのでそちらも読むと。

Latest: v1.7.2

と書かれてありました。最新バージョンがいくつか確認もしておきましょう。

download the latest composer.phar in the current directory

最新版のcomposerを現在のディレクトリにダウンロードできます…
と書かれているのですが、

そもそもダウンロード先にふさわしいのはどこ?と思ったので、下記のサイトを参考に

/usr/local/bin にしました。

qiita.com

あとは、Composerの指示にしたがって、コマンドを打ちました。

cd /usr/local/bin
sudo php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

ls
composer-setup.php

sudo php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Installer verified

私の環境では installer SHA-384 が問題なく確認できたみたいです!

sudo php composer-setup.php

All settings correct for using Composer
Downloading...

Composer (version 1.7.2) successfully installed to: /usr/local/bin/composer.phar
Use it: php composer.phar

php composer-setup.php  に関しては、インストール先のディレクトリやファイル名を決定するオプションも付けられるようなので、お好みで。
 

ls

composer.phar composer-setup.php

sudo php -r "unlink('composer-setup.php');"

ls

composer.phar

composer.pharが出てきたら、最後にパスを通します。

/usr/local/bin/composerディレクトリに移す必要があるそうです。

最初からディレクトリ作っておいて、そこでインストーラーを起動しても大丈夫だと思います。

sudo mv composer.phar /usr/local/bin/composer composer -V

Composer version 1.7.2 2018-08-16 16:57:12

無事、composerと打つだけで、composerを使えるようになりました!

(ちゃんと読んだら、Composer の Getting Started ページの冒頭にPATHを通すと「composer」のコマンドだけで呼び出せて便利だよ!みたいなことが書かれていました…。)

CentOS7.5のログ

そういえばログ入れてない!と思って「centos7 log」で検索。

thinkit.co.jp

こちらのサイトを参考にしました。

systemctl status systemd-journald

と打って確認したところ、

● systemd-journald.service - Journal Service

正常に動いてました。

CentOS7.5にmariadbをインストール

qiita.com

こちらの記事を参考にmariadbの最新版をインストールしました。

参考にした記事で完結しているので、あくまで私の行動メモとして記事を公開いたします……。

 

ちゃんと入ってるか確認です。

mysql --version

mysql Ver 15.1 Distrib 10.1.36-MariaDB, for Linux (x86_64) using readline 5.1

 

sudo systemctl start mariadb

sudo systemctl status mariadb

● mariadb.service - MariaDB 10.1.36 database server

CentOS7.5にphp7.2をインストール

環境構築の勉強をするにあたって、

  • 職場では(私が)使う可能性の低いLaravelを使いたい
  • その土台となるPHPなども、新しいバージョンを入れたい

という要望がありました。

なので、ただのyum installだと怪しい気がしたので、

php linux 最新」で検索。

検索結果からこちらのサイトを参考にさせていただきました。
www.rem-system.com

こちらのサイト、入れるコマンドと返ってくる結果まで記載してあるため、
とてもわかりやすかったです。

 

参考にするサイトが複数あれば、まとめブログとしても十分有効なのでしょうが、
いいサイトが1つあると、感謝を述べるブログになってしまいますね。

 

1点だけ。

remiレポジトリ・PHPの最新バージョンを自分の目で確認してから入れるべきだと思ったので、
確認方法をメモしたいと思います。

remiレポジトリ

Remi's RPM repository

centos」で検索をかけたところ、

Maintained Enterprise Linux (RHEL / CentOS / Other clones)

 

という見出しが見つかりました。

2018/09/09時点で 7 が最新版だったため、参考サイトのコマンド通りに実行しました。

php

http://php.net/downloads.php

Current Stable PHP

の横の数字を確認しました。

(直訳で「現在の安定したPHP」なので)

2018/09/09時点で 7.2.9 だったので、参考サイトのコマンド通りに実行しました。

 

進捗

PHP7.2を入れました。

ConoHaでVPSをレンタル

環境構築の勉強のため、なにかやりたいと思ってVPSをレンタルしました。

 

ConoHaにした理由は友達に勧められたからが最大の理由で、

現時点ではサーバーレンタルより安いなぁという程度の気持ちで借りています。

本当は類似サービスと比較してからレンタルすべきだとは思います。

ただ、このままだと何もやらないな、と思ったので、とりあえず借りました。

 

私の場合、サイト作りたいんだけど~といった相談を友達にしたのは2018/05/03のことで、

最初こそ「他のサービスと比較してから決めよう」と思っていたものの、

大した比較もしないまま約4ヵ月が過ぎていました。

それだったら、せっかく友達が私の話を聞いて最適と思うサービスを勧めてくれたわけだし、

まずはそれを使って、違いが分かるようになってから比較しようと考え方を変えました。

 

お金がかかれば行動は後からついてくる。はず。

 

友達に相談した内容
  • WordPressをベースにしたサイト
  • 自作アプリのデータベース

を置けるサーバーがほしい、と相談しました。

ログを見返したら、最初は「さくらのレンタルサーバー」を勧められていました。

(忘れてた)

 

 

今作りたいもの
  • サイト (WordPressを使わなくても、ペライチでもいいから自己紹介サイトを作りたい)
  • 自作アプリのデータベース&API (Laravelを使いたい)
  • 自作アプリ

環境構築の勉強がしたいのもそうですが、自分の知識が活かせるところ(PHPMySQL関係)から作っていきたいので、

上から順に作っていくことになりそうです。