Homestead環境、虛擬機環境等安裝Mongodb,以及源的報錯處理,以及安裝php的Mongodb擴展

還是官方網站靠譜:雖然我的Homestead是Centos+ubuntu19.04的環境,官網只給了16.04和18.04的安裝教程,但是用18.04的教程安裝是OK的。根據自己選擇的系統和環境去安裝。

Link:官方地址

一、首先我參照文檔去測試Homestead環境自動安裝。

1、需要在 Homestead.yaml 中加入 mongodb: true ,其實就是調起 homestead 下面的 ./scripts/install-mongo.sh 腳本而已。

ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox

# 使用 MongoDB
mongodb: true

authorize: ~/.ssh/id_rsa.pub

2、重新加載配置【由於源的問題缺少mongodb組件,報錯,最後異常退出】

vagrant reload --provision

中間出現以下錯誤信息: 

 然後我就去google,就去添加相關mongodb的源,依然報錯,算了,去查找官方文檔吧:

homestead-7: Running: script: Creating MySQL Database: homestead
==> homestead-7: Running provisioner: shell...
    homestead-7: Running: script: Creating Postgres Database: homestead
==> homestead-7: Running provisioner: shell...
    homestead-7: Running: script: Creating Mongo Database: homestead
    homestead-7: /tmp/vagrant-shell: line 3: mongo: command not found
The SSH command responded with a non-zero exit status. Vagrant
assumes that this means the command failed. The output for this command
should be in the log above. Please read the output to determine what
went wrong.

二、其實安裝Mongodb不區分是docker還是虛擬機或者使用homestead之類的。

不管你是 vagrant reload --provision  調用 install-mongodb.sh 自動安裝,還是 vagrant  ssh 進去之後,手動安裝。都一個樣兒。

官方安裝流程:

1、導入包管理系統使用的公鑰,正常返回ok,如果出現問題查看1.1,反之,進行第2步。

wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -

1.1 如果第1步出現 gnupg 未安裝的提示則:

sudo apt-get install gnupg

wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -

 2、爲MongoDB創建一個列表文件。

echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list

3、更新源

sudo apt-get update

4、安裝Mongodb

sudo apt-get install -y mongodb-org

5、啓動Mongodb

sudo mongod    //啓動命令,如果提示沒有/data/db ,就 mkdir -p /data/db,並chmod

sudo service mongod start

sudo service mongod start/restart/status/stop

如圖所示:ok,也不會報錯。

說明還是官方的源比較好,哈哈。

三、安裝PHP的Mongodb擴展

PHP官方手冊 :

sudo pecl install mongodb    //每個php版本都有自己的pecl
php.ini  將擴展添加在cli和fpm下的phpini
extension=mongodb.so
php -i | grep php.ini  //定位配置文件

sudo service php7.3-fpm restart  //重啓加載

php -m 或者  php -m | grep mongodb  查看是否加載成功

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章