$ sudo apt-get update
$ sudo apt-get install -y vim git nginx mysql-server mysql-client supervisor
“`

– vim:文本編輯器,有助于我們在Linux中進行文本編輯。
– git:分布式版本控制系統,可以幫助我們管理代碼。
– nginx:輕量級的HTTP服務器,通常用于反向代理,負載均衡等。
– mysql-server 和 mysql-client:關系型數據庫管理系統,可以幫助我們存儲數據。
– supervisor:進程管理器,可以幫助我們守護進程,確保我們的Web應用一直在運行。

3. 配置Nginx

Nginx是一個高性能、輕量級的Web服務器,可以幫助我們實現反向代理、負載均衡等功能。在部署Web應用時,通常我們需要使用Nginx作為Web服務器。

我們需要編輯Nginx的配置文件/etc/nginx/nginx.conf,將其修改為如下內容。

“`
user www-data;
worker_processes auto;
worker_rlimit_nofile 65535;

pid /run/nginx.pid;

events {
worker_connections 65535;
multi_accept on;
}

http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;

types_hash_max_size 2048;

server_tokens off;

server_names_hash_bucket_size 64;

include /etc/nginx/mime.types;
default_type application/octet-stream;

ssl_protocols TLSv1.2 TLSv1.1 TLSv1;

ssl_prefer_server_ciphers on;

access_log off;

error_log /var/log/nginx/error.log;

gzip on;
gzip_static on;
gzip_http_version 1.1;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_disable \”MSIE [1-6]\\.(?!.*SV1)\”;

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=app_cache:10m inactive=60m;
server {
listen 80 default_server;
listen [::]:80 default_server;

root /var/www/html;

index index.html index.htm index.nginx-debian.html;

server_name _;

location / {
try_files $uri $uri/ /index.html;
}
}
}
“`

重新啟動 Nginx 以生效配置文件:

“`
$ sudo systemctl restart nginx
“`

4. 安裝Node.js

在Ubuntu 18.04 LTS中,我們可以通過以下命令安裝Node.js。

“`
$ curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash –
$ sudo apt-get install -y nodejs
“`

安裝完成后,運行以下命令檢查Node.js是否安裝成功:

“`
$ node –version
“`

如果返回 `v12.xxx` 的版本號,則表示已經成功安裝了Node.js。

5. 安裝PM2

PM2 是一款流行的進程管理工具,可以用來守護我們的Node.js應用程序,幫助我們實現自動化部署等功能。在Ubuntu 18.04 LTS系統中,我們可以通過以下命令安裝PM2:

“`
$ sudo npm install -g pm2
“`

PM2 安裝完成后,我們可以通過以下命令檢查是否安裝成功:

“`
$ pm2 –version
“`

如果返回版本號,則表示已經成功安裝了PM2。

四、Web應用部署

在完成服務器環境的搭建以后,我們就可以開始部署我們的Web應用了。

1. 代碼準備

將開發環境中的代碼打包成tar.gz文件,上傳到云服務器上。在服務器上創建/var/www目錄,將上傳的壓縮包放到該目錄下,解壓。

2. 安裝依賴

進入源碼目錄,運行以下命令安裝依賴:

“`
$ npm install
“`

3. 配置環境

在開發過程中, 我們通常需要根據不同的環境進行不同的配置,比如開發環境、測試環境、生產環境等。因此我們需要針對不同的環境進行配置。

在本文中,我們以生產環境為例進行配置,將默認端口號修改為`80`,可以在`package.json`中進行配置:

“`
{
\”name\”: \”your-project\”,
\”version\”: \”1.0.0\”,
\”main\”: \”index.js\”,
\”scripts\”: {
\”start\”: \”NODE_ENV=production PORT=80 pm2 start index.js –name your-project\”
},
\”dependencies\”: {
\”express\”: \”^4.17.1\”
}
}
“`

4. 啟動應用

在完成環境配置后,我們就可以啟動我們的Web應用了。

“`
$ npm start
“`

在瀏覽器中訪問`http://云服務器IP`即可查看我們部署的Web應用。

五、自動化部署

為了提高編碼效率,我們需要實現自動化部署,可以通過工具簡化我們的部署流程。常見的自動化部署工具主要有三種:Capistrano、Ansible和Jenkins。

1. Capistrano

Capistrano 是一個Ruby編寫的自動化部署工具,可以幫助我們快速部署Web應用,支持多臺服務器同時部署,并且支持版本回退功能。Capistrano 的使用相對比較簡單,但是要求服務器必須預先安裝 Ssh 和 Git。

2. Ansible

Ansible 是一款輕量級的自動化部署工具,可以幫助我們完成服務器的管理和應用的部署等任務。Ansible 的配置文件是YAML格式的,易于學習和使用。

3. Jenkins

Jenkins 是一款開源的自動化部署服務器,支持多種編程語言和多種操作系統。Jenkins 可以和 Git 等版本控制工具相結合,實現自動化構建和部署等功能。

相較于Capistrano和Ansible,Jenkins相對來說更加的復雜一些, 在這里本文不再詳細闡述。

可以通過上述工具實現自動化部署,使得部署過程更加的簡單和快捷。

六、總結

通過本文,我們了解了如何將Web代碼部署到云服務器,并通過自動化部署工具來實現無人值守的部署操作,節省了開發者的時間。當然,在部署過程中也需要注意安全問題,保證服務器和Web應用的穩定性。同時云服務商的選擇也會深度影響你的產品質量, 開發人員需要仔細選擇并且維護云服務器穩定性, 提供更高品質和更好的用戶體驗的服務。

以上就是小編關于“web代碼如何部署到云服務器”的分享和介紹

三五互聯(35.com)是經工信部審批,持有ISP、云牌照、IDC、CDN全業務資質的正規老牌云服務商,自成立至今20余年專注于域名注冊、虛擬主機、云服務器、企業郵箱、企業建站等互聯網基礎服務!
公司自研的云計算平臺,以便捷高效、超高性價比、超預期售后等優勢占領市場,穩居中國接入服務商排名前三,為中國超過50萬網站提供了高速、穩定的托管服務!先后獲評中國高新技術企業、中國優秀云計算服務商、全國十佳IDC企業、中國最受歡迎的云服務商等稱號!
目前,三五互聯高性能云服務器正在進行特價促銷,最低僅需48元!
http://www.shinetop.cn/cloudhost/

贊(0)
聲明:本網站發布的內容(圖片、視頻和文字)以原創、轉載和分享網絡內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。郵箱:3140448839@qq.com。本站原創內容未經允許不得轉載,或轉載時需注明出處:三五互聯知識庫 » web代碼如何部署到云服務器

登錄

找回密碼

注冊