apt-getとyumの違い
Why?
同じところ
- apt も yum もパッケージ管理ソフト
- 自動ダウンロード、インストール、アップグレード
違うところ
apt
参考
Linux パッケージ管理コマンド比較(yum / dnf / apt 等) - らくがきちょう
TODO
Ubuntu に Java インストール
What?
Why?
- NeobundleInstall を叩いたときにJavaがなくてコケた
Solution
Apt-get でインストールする
Ubuntu version
$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENAME=xenial DISTRIB_DESCRIPTION="Ubuntu 16.04.1 LTS"
- パッケージのIndexをアップデートする
$ sudo apt-get update
- Javaがインストールされているか確認
$ java -version bash: java: command not found
$ sudo apt-get install default-jre
- Apt-getでJava Development Kit (JDK)をインストールする
$ sudo apt-get install default-jdk
参考
How To Install Java on Ubuntu with Apt-Get | DigitalOcean
TODO List
Laravel homesteadで最初のVagrant upが止まる
What?
- ホストPC上では、以下で止まってエラー無しでタイムアウトする
$ vagrant up Bringing machine 'homestead-7' up with 'virtualbox' provider... ==> homestead-7: Checking if box 'laravel/homestead' is up to date... ==> homestead-7: Clearing any previously set forwarded ports... ==> homestead-7: Clearing any previously set network interfaces... ==> homestead-7: Preparing network interfaces based on configuration... homestead-7: Adapter 1: nat homestead-7: Adapter 2: hostonly ==> homestead-7: Forwarding ports... homestead-7: 80 (guest) => 8000 (host) (adapter 1) homestead-7: 443 (guest) => 44300 (host) (adapter 1) homestead-7: 3306 (guest) => 33060 (host) (adapter 1) homestead-7: 5432 (guest) => 54320 (host) (adapter 1) homestead-7: 27017 (guest) => 27017 (host) (adapter 1) homestead-7: 22 (guest) => 2222 (host) (adapter 1) ==> homestead-7: Running 'pre-boot' VM customizations... ==> homestead-7: Booting VM... ==> homestead-7: Waiting for machine to boot. This may take a few minutes... homestead-7: SSH address: 127.0.0.1:2222 homestead-7: SSH username: vagrant homestead-7: SSH auth method: private key Timed out while waiting for the machine to boot. This means that Vagrant was unable to communicate with the guest machine within the configured ("config.vm.boot_timeout" value) time period. If you look above, you should be able to see the error(s) that Vagrant had when attempting to connect to the machine. These errors are usually good hints as to what may be wrong. If you're using a custom box, make sure that networking is properly working and you're able to connect to the machine. It is a common problem that networking isn't setup properly in these boxes. Verify that authentication configurations are also setup properly, as well. If the box appears to be booting properly, you may want to increase the timeout ("config.vm.boot_timeout") value.
- ゲストPCをVirtualbox GUIから直接コンソールをShowすると、以下で止まっている
A start job is running for raise network interfaces (5 mins 8 sec)
Why?
- Virtualboxの
Network > Adapter 1(NAT) > Advanced > Cable Connected
のチェックが外れていただけだった。。
Solution?
Virtualboxの
Network > Adapter 1(NAT) > Advanced > Cable Connected
のチェックを入れて、再度vagrant upもし再度vagrant upして止まったら一度destroyしてから、再度up
判別手順
- Vagrantではエラーが出ずに止まる
- VirtualboxのGUIからShowしてコンソールを確認
A start job is running for raise network interfaces
ネットワークの何かを延々と待っているっぽい
- VirtualboxのGUIからShowしてコンソールを確認
- Virtualboxにそもそも普通にssh接続できるのか
ssh vagrant@192.168.10.10 -p 2222
がタイムアウトする- Virtualboxまでネットワークが到達してない
- Virtualboxのネットワーク設定がおかしいのか
- NATとHost-only Adapterは設定されてる?
- されてる
- Port Forwardingは設定されてる?
- ssh Host 2222 -> Guest 22 に設定されてる
- Virtualbox上でネットワーク設定で通常と違うところは?
- Cable Connectedが。。。チェックが外れてる。。。
- NATとHost-only Adapterは設定されてる?
- Vagrantではエラーが出ずに止まる
無駄に頑張ったこと
- (GUIから見る前)Virtualboxが立ち上がる前に死んだと思った
- VirtualboxにGUIから入ってShowすると普通に生きてた
- ssh認証設定が間違っていると思っていた
~/.homestead/Homestead.yaml
のssh keyの所在を確認したが、問題ない- そもそもauthorisationエラーが出てない
- Hostsの設定が間違っていると思っていた
~/.homestead/Homestead.yaml
のIP設定がおかしいと思った- そもそも立ち上げる前なので関係ない
- ここが間違っているとIPorドメインでアクセスしようとしたときに死ぬはず
- Vagrant, Virtualbox のバージョンが古いと思った
- バージョンが古ければエラーが出るはずだけど、一応念を入れて最新にした
Laravel homesteadを使ってLaravel 5のローカル開発環境を構築
Index
What?
Laravel のローカル開発環境をHomestead Vagrant boxで簡単にセットアップする方法
ざっくりした構成
Why?
- Laravel は、PHPのくせにNode.js諸々が必要だったりして、かなり環境構築が面倒
- Vargrantを使って一気に環境を作れると便利!
- Laravel環境に必要なものをhomesteadという名前のVagrantboxとしてまとめたぜ!
How to?
Step1: 事前準備
Step2: 設定
- Homesteadの設定をする
~/.homestead/Homestead.yaml
を編集するsites.map
以外はディフォルト
ip: "192.168.10.10" # VMのIPになる memory: 2048 cpus: 1 provider: virtualbox authorize: ~/.ssh/id_rsa.pub keys: - ~/.ssh/id_rsa folders: - map: ~/Develop/Trial/tryLaravel # ローカルでLaravelをインストールするorされているディレクトリ to: /home/vagrant/Code # VM内のディレクトリ sites: # Nginxの設定 - map: homestead.app # ドメイン設定、Hosts設定とつながる to: /home/vagrant/Code/Laravel/public # Laravelのpublicディレクトリの場所 databases: - homestead
- ホストPCでHostsを追記(homestead.appドメインでアクセスするため
- 再起動はいらないよー
192.168.10.10 homestead.app
Step3: VM立ち上げ
- ホストPCでLaravel用のディレクトリを作る
$ mkdir -p ~/Develop/Trial/tryLaravel
- VMを立ち上げる
- bootするのに数分かかる
$ cd ~/homestead/ $ vagrant up
- 確認
- http://homestead.app:8000/ にアクセスする
No input file specified.
と表示される(まだLaravelが入っていない)
- http://homestead.app:8000/ にアクセスする
Step4: Laravelインストール
- ホストPCからゲストPCにsshログイン
$ vagrant ssh
- ゲストPCで、Laravelインストール
$ cd ~/Code $ composer create-project laravel/laravel --prefer-dist laravel
- 確認
- http://homestead.app:8000/ にアクセスする
Laravel
と表示される
- http://homestead.app:8000/ にアクセスする
参考
Laravel homesteadを利用したLaravel 5 ローカル開発環境の構築 | hrendoh's memo
Laravel homestead初期設定中に失敗したときのやり直し方
What?
- Laravel homestead初期設定中に失敗したときのやり直し方
Why?
$ vagrant up Bringing machine 'homestead-7' up with 'virtualbox' provider... ==> homestead-7: Checking if box 'laravel/homestead' is up to date... ==> homestead-7: Running provisioner: file... Guest-specific operations were attempted on a machine that is not ready for guest communication. This should not happen and a bug should be reported.
Solution
- 一回殺してから、再起動
$ vagrant destroy $ vagrant up
Mac で vagrant のバージョンアップをする
What?
Why?
- Laravel環境をhomesteadで作ろうとしたらバージョン低すぎて怒られた
$ vagrant up This Vagrant environment has specified that it requires the Vagrant version to satisfy the following version requirements: >= 1.8.4
Solution
- 作業前
$ vagrant -v Vagrant 1.8.1
https://www.vagrantup.com/downloads.html
- 作業後
$ vagrant -v Vagrant 1.9.1
Jenkins初期セットアップ時にプラグインがインストールできない
What?
Jenkins初期セットアップ時に以下エラーが表示され、プラグインがインストールできない。
An error occurred during installation: No such plugin: cloudbees-folder
Why?
まだ不明
Solution?
http://localhost:8080/restart でJenkinsを再起動する
or
service jenkins restart
でJenkinsを再起動する
をやってみたけど、だめだったのでGetting startedをスキップしてしまった。継続調査中。