1 代碼發佈簡介
1.1 什麼是代碼發佈
代碼發佈是:將代碼放到互聯網服務器上,對外提供web服務。
1.2 發佈方式
常見的代碼發佈方式有兩種:手工方式和腳本方
手工發佈代碼 | 腳本發佈代碼 |
---|---|
慢 | 快 |
干擾因素多 | 干擾因素少 |
不安全 | 安全 |
2 代碼發佈流程
2.1 流程簡介
2.2 流程詳解
2.3 技術關鍵點
文件的壓縮和解壓
-
文件的壓縮
- 壓縮格式:tar zcvf 壓縮後的文件名 將要壓縮的文件
-
文件的解壓
- 解壓格式:tar xf 壓縮後的文件名
-
查看壓縮文件內容
- zcat 壓縮文件
-
命令參數詳解
參數 | 作用 |
---|---|
z | 指定壓縮文件的格式爲 tar.gz |
c | 壓縮 |
v | 顯示詳細過程 |
f | 指定壓縮文件 |
x | 解壓 |
文件的傳輸
- scp傳輸工具
- 命令格式:scp 源文件 目標位置
- 將本地文件推送到遠程主機
- scp python.tar.gz [email protected]:/root/
- 將遠程主機的文件拉取到本地
- scp [email protected]:/root/python.tar.gz ./
- 遠端主機文件夾位置的表示形式:
- 遠程連接的用戶@遠程主機:遠程主機的目錄路徑
- 遠端主機文件位置的表示形式:
- 遠程連接的用戶@遠程主機:遠程主機的文件路徑
window的xshell中:
安裝包:apt install lrzsz
上傳
- 連接遠程服務器,切換到某個目錄,輸入rz,選擇文件
下載
- 連接遠程服務器,切換到某個目錄,輸入sz 文件,選擇保存的路徑
文件的備份
文件的備份要有一定的標誌符號,目前通用的是使用時間戳的形式來表示
- date命令詳解:命令格式:date [option]
參數 | 作用 |
---|---|
%F | 顯示當前日期格式,%Y-%m-%d |
%T | 顯示當前時間格式,%H:%M:%S |
- 演示效果
顯示當前日期:date +%F 2017-09-28
顯示當前時間:date +%T 03:06:30
根據上面的參數介紹,我們可以指定命令顯示的格式,
年月日:date +%Y%m%d
時分秒:date +%H%M%S
顯示當前日期:date +%Y%m%d 20170928
顯示當前時間:date +%H%M%S 030643
指定時間戳格式:
年月日時分秒:date +%Y%m%d%H%M%S
備份命令效果格式:
方式一:複製備份
cp nihao nihao-$(date +%Y%m%d%H%M%S)
方式二:移動備份
mv nihao nihao-$(date +%Y%m%d%H%M%S)
爲了避免在放置新文件時候,出現驗證操作,採用方式二
遠程連接到服務器
windows連接linux:使用xshell
linux\mac連接linux:使用ssh:ssh [email protected]
使用root用戶遠程連接
輸入sudo passwd設置新密碼 然後就可以su->輸入密碼登錄了
但是這不是用root直接登錄,而是用主用戶賬號登錄後切換登錄,一般公司不會給主用戶賬號,而是給一個root賬號你使用。那麼,要怎樣纔可以直接用root登錄呢
1、修改配置文件
sudo vi /etc/ssh/sshd_config
2、修改下面內容
PermitRootLogin prohibit-password
PermitRootLogin yes
3、重啓ssh服務
service ssh restart
但是一般不可能用主用戶進行登錄,而是靠免密登錄認證,不需要密碼但是需要配置公鑰私鑰。
配置流程如下:
1、A連接B,A申請一對鑰匙
ssh-keygen -t rsa
詢問文件位置和密碼,全部直接回車
拷貝公鑰
cat /root/.ssh/id_rsa.pub
2、創建文件
vi /root/.ssh/authorized_keys
將A服務器的公鑰保存到裏面B服務
3、器修改配置文件
vi /etc/ssh/sshd_config
取消下面內容的註釋
AuthorizedKeysFile %h/.ssh/authorized_keys
4、B服務器重啓ssh服務
service ssh restart
#3 環境部署
在代碼發佈過程中,一般都不會去服務器上面直接操作,有些時候部署在雲服務器上更是不可能直接操作,這時候就需要遠程鏈接操作了。而如果想要遠程連接操作,通常你需要創建一個環境專門用來操作。從而不會和服務器上的其他文件有所衝突,其次結構清晰的環境更加方便維護。
基礎環境配置
爲什麼要創建基礎環境目錄? 爲了方便管理所以需要創建環境目錄,這樣我們就可以見名知意,知道每個目錄該存放什麼文件
###如何創建基本目錄
mkdir /data/{server,logs,backup,softs,virtual,scripts,codes} -p
ls /data/
backup logs scripts server softs virtual codes
使用tree查看創建的目錄
admin-1@ubuntu:/data# tree -L 1 /data/
/data/
├── backup 備份
├── codes 代碼
├── logs 日誌
├── scripts 腳本
├── server 服務
├── softs 軟件
└── virtual 虛擬環境
-L n 顯示層級