人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

使用Vscode結(jié)合docker進(jìn)行開(kāi)發(fā)的詳細(xì)過(guò)程

發(fā)布日期:2021-12-15 14:51 | 文章來(lái)源:源碼之家

使用 Docker 與 VS Code 可以優(yōu)化整個(gè)本地開(kāi)發(fā)環(huán)境,加速項(xiàng)目進(jìn)度過(guò)程。在所有環(huán)境中使用相同的基礎(chǔ)映像,為所有開(kāi)發(fā)人員提供相同的編輯器工具,可以更容易實(shí)現(xiàn)標(biāo)準(zhǔn)。

大型項(xiàng)目的團(tuán)隊(duì)首先必須確保安裝依賴、內(nèi)核版本這些開(kāi)發(fā)環(huán)境是統(tǒng)一的。為了解決開(kāi)發(fā)環(huán)境一致性的問(wèn)題,常規(guī)傳統(tǒng)的辦法就是制定開(kāi)發(fā)人員遵循制定指南,但是盡管如此實(shí)際開(kāi)發(fā)過(guò)程還是會(huì)遇到各種障礙。

設(shè)置環(huán)境的常規(guī)方法如下圖所示:

另一種解決方案是使用所有必需的庫(kù)和依賴項(xiàng)預(yù)先配置的開(kāi)發(fā)環(huán)境,開(kāi)發(fā)人員可以在容器中分拆這些庫(kù)和依賴項(xiàng)。然后,開(kāi)發(fā)人員可以在容器提供的隔離環(huán)境中工作。這極大地減少了開(kāi)發(fā)人員在克隆代碼庫(kù)以開(kāi)始處理它之間花費(fèi)的時(shí)間。

除了為所有開(kāi)發(fā)人員提供相同的環(huán)境之外,我們可以利用它來(lái)自動(dòng)安裝您的項(xiàng)目所需的特定擴(kuò)展。這可以避免工具的不一致使用,并且省去開(kāi)發(fā)人員手動(dòng)安裝的麻煩。

以下是通過(guò)結(jié)合使用 Docker 和 VS Code 的Remote — Containers擴(kuò)展來(lái)實(shí)現(xiàn)的。

設(shè)置

在本文中,我將提供一個(gè)在 Node 環(huán)境中運(yùn)行的 JavaScript 應(yīng)用程序示例。閱讀在容器內(nèi)開(kāi)發(fā)以獲取所有技術(shù)堆棧的詳細(xì)文檔。

如果您尚未安裝Docker和 VS Code,請(qǐng)先安裝它們。在 VS Code 中安裝Remote — Containers擴(kuò)展。確保 Docker 正在您的機(jī)器上運(yùn)行。

轉(zhuǎn)到您的項(xiàng)目并在根目錄中創(chuàng)建一個(gè)名為.devcontainer的文件夾。這個(gè)新文件夾包含開(kāi)發(fā)容器所需的配置文件。

在.devcontainer 中創(chuàng)建Dockerfile和devcontainer.json并添加以下配置。

Dockerfile文件如下

# Specify the base image you want your dev container to use.
# You may use the same exact base image your application would use in production for consistancy.
# That could prevent surprises such as "works in local, but not in PROD".
FROM node:14.17.0-alpine
# Additionally you can install other dependencies for the environment while configuring the base image.
# In this example, I am installing Git as the Alpine version of node does not come with one. 
RUN apk update
RUN apk add git

devcontainer.json文件如下

{
    "name": "DevContainer ReactApp",
    // Provide the dev container with a Dockerfile that it can use to build an image and run the container.
    "dockerFile": "Dockerfile",
    // Command(s) to run before the container is created.
    // In this case we are installing the node modules.
    "initializeCommand": "yarn install",
    // Starts the development server every time the container starts.
    // This is triggered on reopening the container as well. 
    "postStartCommand": "yarn start",
    // Forward your application's port(s) running in the container to the local machine.
    "forwardPorts": [3000],
    // Required VSC code extensions that you want to automatically install for the developers to use.
    "extensions": [
        "dbaeumer.vscode-esli

完成后,我們需要構(gòu)建容器。為此,請(qǐng)使用 VS Code 命令面板中的“在容器中打開(kāi)文件夾”或“在容器中重新打開(kāi)”。


這應(yīng)該初始化開(kāi)發(fā)容器。它拉取 docker 基礎(chǔ)鏡像,配置容器,并啟動(dòng)開(kāi)發(fā)服務(wù)器。


結(jié)語(yǔ)

容器的構(gòu)建和配置是一次性活動(dòng),需要時(shí)間。如果沒(méi)有更改,后續(xù)重建會(huì)更快。但是,如果 devcontainer.json 或 Dockerfile 發(fā)生更改,則需要重新構(gòu)建以應(yīng)用更改。如果您嘗試直接重新打開(kāi),系統(tǒng)將提示您重建。

到此這篇關(guān)于使用Vscode結(jié)合docker進(jìn)行開(kāi)發(fā)的的文章就介紹到這了,更多相關(guān)Vscode結(jié)合docker開(kāi)發(fā)內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!

版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開(kāi)通

自選配置、實(shí)時(shí)開(kāi)通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問(wèn)服務(wù)

1對(duì)1客戶咨詢顧問(wèn)

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部