安裝 Docker Engine-Community#
1. 使用 Docker 倉庫進行安裝#
在新主機上首次安裝 Docker Engine-Community 之前,需要設置 Docker 倉庫。之後,您可以從倉庫安裝和更新 Docker
- 設置倉庫
安裝所需的軟體包。yum-utils 提供了 yum-config-manager,並且 device mapper 存儲驅動程序需要 device-mapper-persistent-data 和 lvm2。
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
- 使用以下命令來設置穩定的倉庫。
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
2. 安裝 Docker Engine-Community#
安裝最新版本的 Docker Engine-Community 和 containerd,或者轉到下一步安裝特定版本 如果提示你是否接受密鑰 選擇是
sudo yum install docker-ce docker-ce-cli containerd.io
3. 啟動 docker#
sudo systemctl start docker
4. 通過運行 hello-world 映像來驗證是否正確安裝了 Docker Engine-Community 。#
sudo docker run hello-worldv
安裝 nginx#
1. 查看官方倉庫映像#
docker search nginx
2. 拉取映像#
docker pull nginx
3. 查看映像#
docker images
xxxxxxxxxx # 複製 copy 路徑 \ 文件名 路徑 \ 文件名 #移動 move 路徑 \ 文件名 路徑 \ 文件名 PowerShell
4. 啟動 nginx 映像#
這裡的 —name nginx 可要可不要 這是給 nginx 命名
docker run -d -p 8080:80 --name nginx-8080 nginx
5. 訪問網頁端口#
公安網伺服器 ip 加上 8080 訪問就可以得到
如果到這一步 六瀏覽器沒有打開以下內容,就是你的伺服器沒有開放 8080 端口
我這裡是阿里雲 在安全組開發 8080 端口即可
6. nginx 關閉 / 啟動#
#關閉
docker stop nginx-8080 # 按照我的方法在上面給nginx命名了
docker stop id # 這裡是沒有命名nginx 需要用docker ps 查看已經啟動的映像 拿到nginx的id 來關閉nginx
#啟動
docker restart nginx-8080 # 這裡也一樣 沒有命名 就需要去拿 nginx 的id
安裝 git 並拉取代碼#
安裝#
yum install -y git
# 檢查是否出現版本號 出現則安裝成功
git version
git 配置#
# 配置一個用於提交代碼的用戶,輸入命令
git config --global user.name "Your Name"
#配置一個用戶郵箱,輸入命令
git config --global user.email "[email protected]"
#生成公鑰和私鑰,輸入命令後一路回車即可
ssh-keygen -t rsa -C "[email protected]"
#查看公鑰和私鑰
cat /root/.ssh/id_rsa.pub
一下就是密鑰,複製它#
打開 github#
然後就可以在伺服器 拉取代碼了#
git clone 項目地址
CentOS 安裝 nvm#
- 可以通過curl或者 wget 進行安裝,命令如下
#curl
curl -o- [https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh](https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh) | bash
#wget
wget -qO- [https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh](https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh) | bash
安裝完後,如果是用 xshell 連遠程主機的話,先重連一次,不然會發現提示找不到 nvm 命令
可能出現依舊提示找不到 nvm 命令,那麼請使用 source 命令,如下
source ~/.bashrc
#如果是zsh的話
source ~/.zshrc
到這裡執行 nvm 看看是否安裝成功
安裝 yarn
npm install yarn -g
項目打包,部署上線#
正常 git 拉取項目下來,執行以下命令#
git clone ... # 拉取遠程倉庫項目
yarn # 安裝項目包
yarn build # 打包項目 會生成一個dist文件
先把 docker 容器停掉#
docker ps # 查看在運行的 nginx 依次停止
# 一定要在項目根目錄下面執行命令 $PWD代表當前路徑
docker run -d -p 8080:80 -v $PWD/dist:/usr/share/nginx/html nginx
docker ps # 查看nginx是否啟動
這時候再去訪問項目 ip 就可以成功訪問到了
腳本簡化部署命令#
這時候在每次寫代碼都會去執行 關閉容器 pull 代碼 執行啟動命令會很麻煩 在項目的根目錄下創建一個 文件名 start.sh
# start.sh 啟動命令 sh start.sh
git pull
yarn --registry=https://registry.npm.taobao.org/ && yarn build
#刪除容器
docker rm -f xiaopy &> /dev/null
#啟動容器
docker run -d --restart=on-failure:5\
-p 8080:80 \
-v $PWD/dist:/usr/share/nginx/html \
--name xiaopy nginx