買了幾回服務器,而後想配置本身的開發環境,可是每次安裝軟件的時候都要找啊找教程,不是jenkins不行就是mysql不行,因此今天我準備寫個完整的安裝與配置,之後再須要的時候直接看文章,照着操做就行。雖然寶塔面板也挺香,docker也不錯,可是總感受少點啥,仍是本身動手比較好玩。let's Go!php
騰訊雲,系統版本:Ubuntu18.04。本文主要涉及安裝Nginx、JDK、PHP、Mysql、Jenkins、Node、NPM、PM2,已經配置相關的服務,若是看官已經會了,那麼提點意見吧!html
由於騰訊雲默認登錄用戶名是ubuntu,操做起來不少都須要root權限,爲了直接使用root帳號登錄,須要添加一個root帳號,添加方式以下:前端
一、使用用戶名ubuntu登陸後,執行java
sudo passwd root複製代碼
輸入要設置的root密碼,密碼輸入不可見,二次輸入確認密碼。
node
二、修改ssh配置mysql
sudo vi /etc/ssh/sshd_config複製代碼
命令行輸入i進行編輯,修改文件中的PermitRootLogin爲yes,默認該項是被註釋的,按Esc,輸入wq + enter保存修改。linux
三、重啓ssh服務,便可使用root帳號登錄了nginx
sudo service ssh restart複製代碼
登錄服務器後,對系統進行更新。在次以前推薦一下自動登錄服務器的腳本,雖然這個不少人都會寫,或者直接ssh命令登錄,可是仍是放着吧,萬一有人須要呢,腳本地址:github.com/BoWang816/s…,登錄系統後,首先更新系統:git
apt-get update複製代碼
apt-get install nginx複製代碼
安裝完成後,經過IP地址打開,顯示如下內容表示Nginx安裝成功,好比個人地址是http://49.235.105.248/,Nginx的端口默認爲80.
github
1.刪除nginx,-purge包括配置文件
sudo apt-get --purgeremove nginx 複製代碼
2.移除所有不使用的軟件包
sudo apt-getautoremove 複製代碼
3.羅列出與nginx相關的軟件並刪除
dpkg--get-selections|grep nginx 複製代碼
sudo apt-get --purgeremove nginx 複製代碼
sudo apt-get --purgeremove nginx-common 複製代碼
sudo apt-get --purgeremove nginx-core複製代碼
對於Nginx的配置,在博客上作了詳細的教程描述,能夠移步:bowang816.github.io/tags/Nginx/
騰訊雲默認會安裝apache,若是要卸載,執行如下命令便可:
sudo apt-get --purge remove apache-common
sudo apt-get --purge remove apache
sudo find /etc -name "apache" |xargs rm -rf
sudo rm -rf /etc/libapache2-mod-jk
dpkg -l |grep apache2|awk '{print $2}'|xargs dpkg -P複製代碼
首先須要下載JDK包,雖然openjdk能夠自動安裝與配置環境變量,可是既然要手把手來,就本身裝吧,由於openjdk安裝的路徑找起來太麻煩了。由於如今官網下載jdk須要oracle帳號,因此這裏提供一個
賬號:2337594954@qq.com
密碼:Woaifengbeibei12
帳號來自 <https://blog.csdn.net/qq_41650354/article/details/82227742>複製代碼
一、新建/usr/local/java文件夾:
mkdir /usr/local/java複製代碼
二、解壓JDK壓縮包:
sudo tar -zxvf jdk-8u131-linux-x64.tar.gz複製代碼
三、將解壓出來的文件名稱修改成jdk,假設解壓出來的文件夾叫 jdk-8.131:
mv jdk-8.131 jdk複製代碼
四、將jdk文件夾複製(cp)或移動(mv)到/usr/local/java:
mv jdk /usr/local/java複製代碼
五、打開/etc/environment文件,添加環境變量:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$JAVA_HOME/bin"
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export JAVA_HOME=/usr/local/java/jdk複製代碼
#set Java environment
export JAVA_HOME=/usr/local/java/jdk
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH複製代碼
八、添加後執行使全局環境變量生效: source /etc/profile
七、打開/etc/profile文件,添加全局java環境:
六、添加後執行使環境變量生效:source /etc/environment
安裝jenkins須要以來Java環境,所以上面首先配置了java環境。
先執行:wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | apt-key add -
再執行:echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list
複製代碼
apt-get update複製代碼
apt-get install jenkins複製代碼
jenkins默認爲8080端口,安裝完成後,經過http://IP:8080便可訪問安裝。好比個人是http://49.235.105.248:8080/,首次打開會須要輸入超級管理員,在服務器經過
cat /var/lib/jenkins/secrets/initialAdminPassword複製代碼
便可查看密碼,輸入密碼後選擇要安裝的插件進行安裝,前端環境通常可能會須要到nodejs、gitlab等,搜索安裝便可。安裝完成後能夠新建項目進行自動化部署,具體如何部署將在下一篇文章中專門去寫。
/etc/default/jenkins 此處可進行端口配置
/var/lib/jenkins 默認安裝路徑
/var/cache/jenkins 默認緩存路徑
/var/log/jenkins 默認日誌路徑
sudo apt-get remove jenkins 複製代碼
sudo apt-get remove --auto-remove jenkins 複製代碼
sudo apt-get purge jenkins
複製代碼
sudo apt-get purge --auto-remove jenkins 複製代碼
安裝nodejs,安裝完成經過node -v查看是否安裝成功
apt-get install nodejs
複製代碼
安裝npm,安裝完成經過npm -v查看是否安裝成功
apt-get install npm複製代碼
安裝pm2,安裝完成經過pm2 -v查看是否安裝成功
sudo npm install -g pm2複製代碼
node安裝成功後無需配置便可使用,須要卸載的話直接使用 apt-get remove nodejs命令便可。
默認安裝的php爲php7.2版本,php7以後移除了mysql的擴展,因此還須要安裝php-mysql。分別執行下面三個命令便可安裝,安裝完成後經過php -v查看是否安裝成功。
sudo apt-get install php php-fpm複製代碼
sudo apt-get install libapache2-mod-php複製代碼
sudo apt-get install php7.2-mysql複製代碼
這裏只是去修改默認的配置文件,若是不想修改默認配置文件,也能夠本身新建配置文件進行配置,具體操做在個人博客中Nginx相關的都有說。
編輯默認配置文件:
vim /etc/nginx/sites-enabled複製代碼
默認php的設置是被註釋掉的,須要將註釋去掉。首先在index中加入index.php,保證PHP文件能夠被索引到:
# Add index.php to the list if you are using PHP
index index.html index.htm index.php index.nginx-debian.html;複製代碼
打開php配置項,咱們使用的是php-fpm,因此這裏的fastcgi_pass 項只須要放開第一個就行了。由於在安裝PHP時默認時裝的是php7.2,因此在/var/run/php 目錄下就會有php7.2-fpm.sock這個文件,因此這裏配這個就行了。
#
location ~ \.php$ {
include snippets/fastcgi-php.conf;
# With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
# With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
}複製代碼
配置成功後,在nginx的默認訪問目錄/var/www/html下,新建一個php文件,經過IP訪問如下,能打開就表示配置成功。
mysql其實能夠單獨購買,可是有點貴你懂的,通常我的建站使用的還在服務器上安裝一個就行了,可是要記得作備份。安裝完成後執行mysql命令,能進入mysql則表示安裝成功。
sudo apt-get install mysql-server複製代碼
首先修改配置文件,對mysql不綁定localhost。執行如下命令,找到 bind-address = 127.0.0.1,註釋掉這行
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
複製代碼
執行mysql命令進入mysql,設置root密碼,這裏我設置的密碼是123456,設置完成後刷新配置:FLUSH PRIVILEGES;
use mysql;
update user set authentication_string=PASSWORD("這裏輸入你要改的密碼") where User='root'; #更改密碼
update user set plugin="mysql_native_password"; #若是沒這一行可能也會報一個錯誤,所以須要運行這一行
flush privileges; #更新全部操做權限
quit;複製代碼
而後重啓mysql服務:
service mysql restart複製代碼
若是經過上述設置,可是本地使用mysqlWorkbench或者navicat沒法連接,是由於沒有給設置權限,執行如下命令給全部ip開放鏈接mysql的權限便可。
use mysql;
GRANT ALL ON *.* to root@'%' IDENTIFIED BY '123456';
flush privileges; #更新全部操做權限
quit;複製代碼
若是須要配置以上內容,要保證服務器的安全組中對應的端口打開
nginx:80,443
jenkins:8080
mysql:3306
至此,全部的服務都已經安裝完畢,若有問題,歡迎拍磚。