前端必須掌握的 docker 技能(1)


概述

作為一個前端,我覺得必須要學會使用 docker 干下面幾件事:

  1. 部署前端應用
  2. 部署 nginx
  3. 給部署的 nginx 加上 https
  4. 使用 docker compose 進行部署
  5. 給 nginx 加上 redis
  6. 使用 kubernetes

下面我按照這個節奏一一研究一遍,把心得記錄下來,供以后開發時參考,相信對其他人也有用。

部署前端應用

(安裝 docker 的過程就略去了,請自行查看官方文檔安裝)

1.我們設置國內鏡像,方便以后下載鏡像文件。

1.點擊屏幕上方的鯨魚 docker 圖標。
2.點擊 Preferences。
3.點擊 Deamon。
4.在 Registry mirrors 那里填上 https://registry.docker-cn.com

2.拉取 node 鏡像。輸入下面的命令遠程拉取最新版本的 node 鏡像。

docker pull node:latest

查看本地鏡像有哪些:

docker images

3.在前端項目的主目錄下建立 Dockerfile 文件,寫入如下內容:

FROM node:latest
WORKDIR /home/app
COPY . .
RUN npm install
expose 8080
CMD npm run serve

// 使用最新的 node 鏡像
// 設置工作目錄為 /home/app
// 把當前目錄下的文件全部復制到工作目錄下面
// 在工作目錄下面運行 npm install
// 暴露 8080 端口(注意:這個 8080 端口就是 npm run serve 的端口)
// 在 cmd 里面使用 npm run serve 命令(注意:這里需要用你自己項目中的命令)

4.我們並不需要把 node_modules 里面的文件復制到 docker 里面去,所以我們在前端項目的主目錄下建立 .dockerignore 文件,並寫入如下內容:

node_modules

5.上面只是准備工作,現在才正式開始。我們使用剛才建立好的 Dockerfile 文件給項目進行打包,建立一個鏡像文件:

docker build -t docker-app:latest .

docker 內部會生成一份這個鏡像文件,我們可以用docker images查看。

6.用這個鏡像文件創建一個實例並運行。

docker run -d -p 2001:8080 docker-app

// -d 意思是在后台運行
// -p 2001:8080 意思是把 docker 的 8080 端口連接到本機的 2001 端口
// 以后就可以通本機的 2001 端口訪問 docker 的 8080 端口了

7.最后打開 localhost:2001 即可。

搞事

有時我們想進入 docker 的 bash 里面搞點事,那方法是運行如下命令即可:

docker exec -it [container_id] /bin/bash

那我們怎么得到這個容器 container_id 呢? 運行如下命令即可:

docker ps -a

那我們要怎么刪除一個鏡像/容器呢?

docker rmi -f [image_id]
docker rm -f [container_id]

那我們要怎么停止/開始一個容器呢?

docker stop [container_id]
docker start [container_id]

注意:本文的步驟顯然不是正常部署的步驟,因為我們在 docker 里面使用的是 npm run dev 命令啊。所以實際上部署只需要把 dist 文件夾里面的內容 copy 進 docker 鏡像里面去就可以了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM