什麼是Bitnami本機安裝程序?
Bitnami本機安裝程序包含運行Bitnami打包應用程序所需的一切。下載後,您可以啓動它,它將提供一步一步的嚮導。堆棧中包含的所有軟件的安裝和配置都是完全自動化的,這使得每個人(包括技術不太熟練的人)都可以輕鬆地啓動和運行。
所有Bitnami本機安裝程序都是完全獨立的,並且獨立於系統上安裝的其他軟件或庫運行。這意味着您不必擔心在系統上安裝任何其他軟件以使新應用程序正常工作。它們也不會干擾您系統上已安裝的任何軟件,因此您運行的所有軟件都將繼續正常運行。
Bitnami堆棧和Bitnami模塊有什麼區別?
Bitnami安裝有兩種格式:獨立堆棧和模塊。
-
如果您只想安裝一個Bitnami打包的應用程序,那麼只需下載並安裝堆棧即可。它將包含運行應用程序所需的一切。
-
如果要運行多個應用程序,可能需要下載LAMP,MAMP或WAMP堆棧,這樣您就可以在其上安裝多個應用程序模塊。這樣,您想要運行的所有Bitnami打包的應用程序將共享一個Apache,MySQL和PHP的實例,這將節省空間並提高性能。
要下載Bitnami堆棧或模塊,請訪問Bitnami下載頁面,選擇要安裝的應用程序,然後單擊操作系統圖標(Windows,Linux或Mac OS X)的下載鏈接。
本機安裝程序的系統要求是什麼?
要使用本機安裝程序安裝Bitnami堆棧,您需要:
- Intel x86或兼容處理器
- PHP和Python應用程序的最小512 MB RAM和Ruby和Java應用程序的1024 MB RAM。
- 至少150 MB的硬盤空間
- TCP / IP協議支持
- 以下兼容的操作系統之一:
- Linux的
- Windows:Windows Server 2008,Windows Server 2012,Vista,Windows 7,Windows 8或Windows 10.某些堆棧還需要.NET Framework v3.5。
- OS X:OS X 10.10或更高版本
如何下載和安裝Bitnami堆棧?
Bitnami堆棧的本機安裝程序以二進制可執行文件的形式分發。它們可以從Bitnami網站下載。
下載的文件將命名爲bitnami-APPNAME-VERSION-linux-installer.run。
要開始安裝過程,請爲安裝程序提供可執行權限,然後執行安裝文件,如下所示:
chmod 755 bitnami-APPNAME-VERSION-linux.run
./bitnami-APPNAME-VERSION-linux.run
注意:相同的二進制文件適用於任何Linux發行版。 |
安裝目錄在哪裏?
如果以常規用戶身份運行安裝程序,則默認安裝路徑將是主目錄的子目錄;如果以root用戶身份運行安裝程序,則默認安裝路徑將是/ opt / APPNAME-VERSION。
什麼是默認端口?
端口是操作系統中通信的端點,用於標識特定進程或服務類型。Bitnami堆棧包括需要端口的多個服務或服務器。
主服務器的默認端口如下:
阿帕奇 | 80或8080 |
MySQL或MariaDB | 3306 |
PostgreSQL的 | 5432 |
Tomcat的 | 8080 |
將堆棧作爲非特權用戶(即除root用戶或系統管理員以外的用戶)安裝時,默認Apache端口爲8080。
如果這些端口已被其他應用程序使用,則安裝程序將提示在安裝過程中使用備用端口。
注:要以非特權用戶身份運行應用程序,請選擇1024以上的端口號。 |
有哪些安裝方式?
有多種安裝模式:
- 圖形模式:默認模式。
- X-Window模式:這是一種替代的圖形模式。可以使用--mode xwindow命令行切換到安裝程序顯式請求此模式。
- 命令行模式:默認情況下,當圖形環境不可用或將--mode text命令行開關傳遞給安裝程序時,將使用此模式。
- 無人蔘與模式:可以通過使用--mode無人蔘與命令行選項傳遞給安裝程序來執行無人蔘與或靜默安裝。
對於所有模式,可以通過將--help命令行開關傳遞給安裝程序來獲取可用的安裝程序選項。
什麼是目錄結構?
安裝過程將在installdir目錄下創建幾個子目錄:
- 服務器和相關工具:apache2 /,mysql /,postgresql /,apache-tomcat /等。
- 語言:php/,python/,ruby/,tcl /等。
- 應用程序文件:apps/ phpMyAdmin /,apps / drupal /,apps / joomla /,apps / redmine /等。
- 常用庫:常用/
- 堆棧中包含的組件的許可證:許可證/
應用程序文件存儲在installdir / apps / APPNAME / htdocs目錄中。Apache Web服務器的配置文件存儲在installdir / apps / APPNAME / conf /目錄中。
如何卸載堆棧?
作爲安裝過程的一部分,將在安裝目錄中創建卸載程序可執行文件或腳本。可以在圖形,文本和無人值守模式下執行卸載。
要在命令行模式下開始卸載過程,請執行卸載腳本,如下所示:
installdir/uninstall
如何啓動或停止服務?
Bitnami本機安裝程序包括一個用於管理服務的圖形工具。此工具在Linux上名爲 manager-linux-x64.run,位於安裝目錄中。要使用此工具,請雙擊該文件,然後使用圖形界面啓動,停止或重新啓動服務。可以在“服務器事件”選項卡中檢查服務器日誌消息。
本機安裝程序還包括一個命令行腳本,用於啓動,停止和重新啓動應用程序,名爲ctlscript.sh。可以在安裝目錄中找到此腳本,並接受選項start,stop,restart和status。要使用它,請按照以下示例登錄服務器控制檯並執行它:
-
無需任何服務名稱即可調用它來啓動所有服務:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo installdir/ctlscript.sh start
-
僅通過將服務名稱作爲參數傳遞來使用它來重新啓動特定服務 - 例如,mysql,postgresql或apache:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo installdir/ctlscript.sh restart mysql sudo installdir/ctlscript.sh restart postgresql sudo installdir/ctlscript.sh restart apache
-
獲取所有服務的當前狀態:
installdir/ctlscript.sh status
可用服務列表因每個應用程序所需的組件而異。
如何創建堆棧的完整備份?
Bitnami堆棧是自包含的,執行備份的最簡單選項是複製或壓縮Bitnami堆棧安裝目錄。要以安全的方式執行此操作,您需要停止所有服務器,因此如果您有人連續訪問應用程序,則此方法可能不合適。
按着這些次序:
-
切換到要保存備份的目錄。
cd /your/directory
-
停止所有服務器。
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo installdir/ctlscript.sh stop
-
使用堆棧內容創建壓縮文件。
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo tar -pczvf application-backup.tar.gz installdir
-
啓動所有服務器。
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo installdir/ctlscript.sh start
-
將application-backup.tar.gz文件下載或傳輸到安全位置。
如何恢復堆棧?
Bitnami堆棧是自包含的,因此要恢復堆棧,您只需要在同一位置解壓縮備份文件。使用最初安裝堆棧時使用的相同路徑非常重要。
如何升級Bitnami堆棧?
強烈建議在開始升級過程之前創建備份。如果您有重要數據,請創建並嘗試還原備份以確保一切正常。
升級Bitnami堆棧有兩種不同的方法。
-
您只能在不修改任何其他堆棧組件的情況下升級應用程序。要執行此操作,請參閱應用程序頁面。
-
您可以升級應用程序和所有堆棧組件,例如PHP,Ruby,MySQL和Apache。請按照以下說明操作:
-
下載堆棧的最新本機安裝程序。
-
使用圖形管理器停止現有堆棧服務。
-
根據Bitnami堆棧是使用MySQL還是PostgreSQL,如MySQL組件頁面或PostgreSQL組件頁面所述備份現有數據庫。
-
將新堆棧安裝到其他安裝目錄。
-
按照Bitnami控制檯頁面中的說明運行Bitnami控制檯腳本。
-
如MySQL組件頁面或PostgreSQL組件頁面所述,從備份還原數據庫
-
複製任何上載的文件或配置文件。可能還需要運行遷移腳本來更新數據庫模式; 但是,這根據應用而有所不同。有關特定於應用程序的升級步驟的詳細信息,請參閱應用程序頁面。
-
使用圖形管理器重新啓動服務器。
-
您現在應該能夠訪問新堆棧了。
如何更改訪問安裝時顯示的默認頁面?
編輯位於installdir / apache2 / htdocs / index.html的文件。
如何打開端口進行遠程訪問?
在許多情況下,必須打開其他端口以使您的應用程序正常運行。
如果您使用的是iptables,請使用以下命令打開端口21:
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
如果您使用的是ufw,請使用以下命令來獲得相同的結果:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo ufw allow 21
如何關閉端口並拒絕遠程訪問?
在某些情況下,必須關閉應用程序的端口以提高安全性。
如果您使用的是iptables,請使用以下命令關閉端口21:
iptables -A INPUT -p tcp --dport 21 -j DROP
如果您使用的是ufw,請使用以下命令來獲得相同的結果:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo ufw deny 21
如何在啓動時自動啓動堆棧?
注意:您將需要root帳戶權限才能執行以下步驟。 |
要使Bitnami堆棧服務器在引導時自動啓動,請將ctlscript.sh腳本安裝爲服務。按照以下步驟操作,在隨後的實際應用程序名稱的所有命令中替換APPNAME佔位符。
類似Debian的發行版(Debian,Ubuntu,...)
-
如果堆棧是以root用戶身份安裝的,請將installdir / ctlscript.sh腳本複製到/etc/init.d目錄。建議將此腳本重命名爲更具體的內容,例如bitname-APPNAME。使用以下命令:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo cp installdir/ctlscript.sh /etc/init.d/bitnami-APPNAME
如果堆棧是作爲其他用戶安裝的,請在/etc/init.d/bitnami-APPNAME下創建下面的腳本,將USERNAME替換爲安裝堆棧的用戶帳戶的名稱:
#!/bin/bash su USERNAME -c "installdir/ctlscript.sh $@"
然後,使腳本可執行:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo chmod +x /etc/init.d/bitnami-APPNAME
-
在/etc/init.d/bitnami-APPNAME腳本的開頭添加或修改以下行。請記住更新“ 提供”行以反映腳本的實際名稱。
### BEGIN INIT INFO # Provides: bitnami-APPNAME # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start daemon at boot time # Description: Enable services provided by daemon. ### END INIT INFO
-
按照以下示例將腳本添加到默認運行級別並啓用它:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo update-rc.d -f bitnami-APPNAME defaults sudo update-rc.d -f bitnami-APPNAME enable
重新啓動系統,服務器應自動啓動。
要還原更改,請使用以下命令:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
cd /etc/init.d
sudo update-rc.d -f bitnami-APPNAME remove
RedHat-Like發行版(Red Hat,Fedora Core,CentOS,Suse,...)
-
如果堆棧是以root用戶身份安裝的,請將installdir / ctlscript.sh腳本複製到/etc/init.d目錄。建議將此腳本重命名爲更具體的內容,例如bitname-APPNAME。使用以下命令:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo cp installdir/ctlscript.sh /etc/init.d/bitnami-APPNAME
如果堆棧是作爲其他用戶安裝的,請在/etc/init.d/bitnami-APPNAME下創建下面的腳本,將USERNAME替換爲安裝堆棧的用戶帳戶的名稱:
#!/bin/bash su USERNAME -c "installdir/ctlscript.sh $@"
-
在/etc/init.d/bitnami-APPNAME腳本的開頭添加或修改以下行。
#!/bin/sh # # chkconfig: 2345 80 30 # description: Bitnami services
這將在運行級別2,3,4和5中執行腳本,優先級80開始,30停止。
-
將腳本安裝爲服務。
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo chkconfig --add bitnami-APPNAME
重新啓動系統,服務器應自動啓動。
要還原更改,請使用以下命令:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo chkconfig --del bitnami-APPNAME
如何增加可用內存?
用於Web應用程序的Bitnami堆棧安裝Apache,MySQL,PostgreSQL等服務器。其中一些需要超過1 GB的內存。如果總內存少於1 GB,請創建交換文件以增加可用系統內存。
什麼是交換?
Linux交換文件允許系統利用比最初物理可用(RAM)更多的內存。交換空間是硬盤驅動器上的區域,用於保存不活動的內存頁面,從而釋放物理內存以供其他用途使用。
建議在系統中使用交換空間。使用free命令檢查當前的交換空間:
free -m
total used free shared buffers cached
Mem: 491 144 346 0 2 25
-/+ buffers/cache: 117 374
Swap: 975 81 894
從輸出,系統有419 MB的RAM和975 MB的交換空間。
如何創建交換文件?
建議交換空間應等於或大於物理內存(RAM)的數量。如果RAM少於1 GB,則至少創建1 GB的交換空間。按着這些次序:
-
確定交換文件的分區並創建它。如果你有一個短暫的分區,這是理想的:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo dd if=/dev/zero of=/mnt/swap.0 bs=1024 count=1048576 sudo mkswap /mnt/swap.0
-
切換到使用root帳戶並激活交換區域:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo su echo "/mnt/swap.0 swap swap defaults 0 0" >> /etc/fstab swapon /mnt/swap.0
-
使用free命令或以下命令檢查交換空間是否已正確啓用:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo swapon -s
Bitnami堆棧需要什麼樣的Glibc最小版本?
GNU C庫是GNU系統中使用的C庫,也是Linux內核的大多數其他系統。大多數Bitnami堆棧至少需要glibc v2.5才能工作。如果系統中的glibc版本低於所需的最低版本,請更新它或安裝更新的操作系統。
您可以使用以下命令獲取系統中的glibc版本:
ldd --version
以下是發佈時最受歡迎的發行版中包含的glibc版本:
- Ubuntu 8.04:2.7
- Ubuntu 10.04:2.11
- Ubuntu 12.04:2.15
- Ubuntu 14.04:2.19
- Debian 5(Lenny):2.7
- Debian 6(Squeeze):2.11
- Debian 7(Wheezy):2.13
- Debian 8(Jessie):2.19
- RHEL 5:2.5
- RHEL 6:2.12
- RHEL 7:2.17
Bitnami堆棧所需的Libstdc ++的最低版本是多少?
標準C ++庫是GNU系統中使用的C ++庫,也是大多數使用Linux內核的系統。某些軟件需要編譯該庫的最小版本。這樣,爲了執行,系統需要具有該庫的相同版本或更高版本。
大多數Bitnami堆棧至少需要glibcxx 3.4.9才能工作。如果系統中安裝的libstdc ++中的glibcxx兼容版本低於所需的最小版本,則需要更新libstdc ++軟件包或安裝更新的操作系統。可以使用以下命令獲取系統中glibcxx的兼容版本:
/sbin/ldconfig -p | grep libstdc | awk '{print $4}' | xargs grep -aoE 'GLIBCXX_([0-9]+)\.([0-9]+)\.([0-9]+)'
- GLIBCXX_3.4.1
- GLIBCXX_3.4.2
- GLIBCXX_3.4.3
- GLIBCXX_3.4.4
- GLIBCXX_3.4.5
- GLIBCXX_3.4.6
- GLIBCXX_3.4.7
- GLIBCXX_3.4.8
- GLIBCXX_3.4.9
- GLIBCXX_3.4.10
- GLIBCXX_3.4.11
- GLIBCXX_3.4.12
- GLIBCXX_3.4.13
- GLIBCXX_3.4.14
- GLIBCXX_3.4.15
- GLIBCXX_3.4.16
- GLIBCXX_3.4.17
- GLIBCXX_3.4.18
- GLIBCXX_3.4.19
在這個例子中,我們可以看到所有glibcxx版本都與系統中安裝的libstdc ++兼容。
如何跳過Libstdc ++最低版本的驗證?
我們用於檢查glibcxx版本的工具在某些環境中可能會失敗。如果發生這種情況,您仍然可以繼續安裝。
-
執行以下命令並確保輸出大於或等於3.4.9:
/sbin/ldconfig -p | grep libstdc | awk '{print $4}' | xargs grep -aoE 'GLIBCXX_([0-9]+)\.([0-9]+)\.([0-9]+)' | tail -n 1 | grep -oE '([0-9]+)\.([0-9]+)\.([0-9]+)'
-
使用選項--disable_glibcxx_version_check 1啓動安裝程序以跳過驗證。
如何安裝Perl和所需的Perl模塊?
MySQL的安裝需要Perl,並與一些Perl模塊結合使用。
您可以使用以下命令檢查系統是否包含Perl:
which perl
您還必須確保Data :: Dumper Perl模塊存在,可以使用以下命令完成:
perl -MData::Dumper -e 'print "Data::Dumper is installed\n"'
如果不存在Perl或Data :: Dumper,請運行以下命令來安裝缺少的組件:
-
於Debian / Ubuntu:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo apt-get install perl
-
CentOS的/ Fedora的/ RHEL:
注意:如果以root身份安裝堆棧,則僅使用sudo。在運行以下命令之前,請記住加載Bitnami堆棧環境(說明)。
sudo yum install perl perl-Data-Dumper
如何設置本地名稱解析的機器主機名?
某些基於Java的應用程序需要能夠將計算機主機名解析爲IP地址才能運行。如果無法執行此操作,應用程序可能會報告以下錯誤:
The installer was not able to resolve the machine hostname.
Java-based applications require to solve the hostname.
要解決此問題,請添加將計算機主機名映射到IP地址127.0.0.1的條目。編輯 / etc / hosts文件並在其下面添加以下行,將HOSTNAME佔位符替換爲計算機的實際主機名。
127.0.0.1 HOSTNAME
如何配置您的應用程序以使用第三方SMTP服務發送電子郵件?
可以將Bitnami應用程序配置爲使用第三方SMTP服務來發送電子郵件。此類第三方SMTP服務的示例是SendGrid和Mandrill。下面提供了使用這兩者的說明。
SendGrid
可以使用您的SendGrid帳戶憑據訪問SendGrid的SMTP服務。可以通過登錄SendGrid網站並訪問“帳戶詳細信息”頁面來獲取這些憑據。
要配置應用程序以通過SendGrid的SMTP服務發送電子郵件,請使用以下設置。使用您的SendGrid帳戶密碼將USERNAME替換爲您的SendGrid帳戶用戶名和PASSWORD。
- SMTP主機:smtp.sendgrid.net
- SMTP端口:25或587用於未加密/ TLS電子郵件,465用於SSL加密電子郵件
- SMTP用戶名:USERNAME
- SMTP密碼:PASSWORD
以下是配置WordPress以使用SendGrid的示例:
SendGrid文檔中提供了更多信息。
山魈
Mandrill的SMTP服務需要API密鑰才能訪問。要獲取此密鑰,請登錄Mandrill網站,導航到“SMTP和API”部分並創建API密鑰。請注意SMTP服務器名稱,用戶名和API密鑰,因爲它們用作訪問Mandrill SMTP服務器的憑據。
要將應用程序配置爲通過Mandrill的SMTP服務發送電子郵件,請使用以下設置。使用生成的API密鑰將USERNAME替換爲您的SMTP用戶名和API-KEY。
- SMTP主機:smtp.mandrillapp.com
- SMTP端口:25,587或2525用於未加密/ TLS電子郵件,465用於SSL加密電子郵件
- SMTP用戶名:USERNAME
- SMTP密碼:API-KEY
以下是配置WordPress以使用Mandrill的示例:
Mandrill文檔中提供了更多信息。
其他第三方SMTP服務也可以遵循類似的步驟。請參閱服務提供商的文檔以獲取有關身份驗證憑據和可用端口的詳細信息。
如何提高服務器性能?
請考慮以下提示以提高服務器的性能。
-
如果尚未啓用,則啓用Apache PageSpeed模塊或Varnish Web應用程序加速器。
-
考慮安裝APCu,XCache,memcached或eAccelerator模塊來緩存和優化PHP應用程序。
-
使用mysqltuner腳本檢查和優化MySQL或MariaDB數據庫服務器配置。
-
如果您遇到影響服務器的bot攻擊,請使用Apache配置文件按指定的IP地址過濾和拒絕請求。