国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

docker持久化部署vue前端nodejs后端項目-- 01. docker以及docker-compose在window以及l(fā)inux的安裝

這篇具有很好參考價值的文章主要介紹了docker持久化部署vue前端nodejs后端項目-- 01. docker以及docker-compose在window以及l(fā)inux的安裝。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

本章節(jié)主要來講述docker desktop 界面版本使用以及docker-compose 的安裝和使用

GIT地址:添加鏈接描述
docker 專欄:點擊此處


系列文章

章節(jié)
1 docker以及docker-compose在window以及l(fā)inux的安裝
2 項目對應(yīng)的docker-compose結(jié)構(gòu)
3 怎么將docker-compose項目部署到服務(wù)器上
4 配置服務(wù)器JENKINS環(huán)境

額外篇

章節(jié)
1 Sentry 是一個開源的錯誤監(jiān)控和日志聚合平臺-- 通過docker-compose 安裝Sentry

前言

做了一個項目,用nodejs寫的后端,vue寫的PC端以及移動端,數(shù)據(jù)庫用mysql,現(xiàn)在要部署到服務(wù)器上。由于怕下次部署又要一堆操作,就弄了個docker,并且以此文章來做筆記以及分享。

期望

  • 服務(wù)器:換了服務(wù)器,只需要服務(wù)器安裝好docker+docker-compose,并將此文件配置拷貝到服務(wù)器,編譯一下,就可以有個項目框架,再對jenkins進行安裝環(huán)境配置就可以了
    (jenkins的項目也同步到了jenkins/jobs中,所以項目不用重復(fù)配置)。
  • 代碼更新:以后有新版本的代碼,可以通過jenkins打包,并且實時發(fā)布,對于web打包就是正常的build一下就可以,nodejs后端比較麻煩。

這里記錄下版本,因為不同時期總會有一些參數(shù)跟環(huán)境要求不一樣了…
大家到時候就可以弄指定版本應(yīng)該可以解決問題…

Docker版本:Docker version 23.0.0, build e92dd87
docker-compose版本: version 1.26.2

docker

  • 搜索倉庫鏡像:docker search 鏡像名
  • 拉取鏡像:docker pull 鏡像名
  • 查看正在運行的容器:docker ps
  • 查看所有容器:docker ps -a
  • 刪除容器:docker rm container_id
  • 查看鏡像:docker images
  • 刪除鏡像:docker rmi image_id
  • 啟動(停止的)容器:docker start 容器ID
  • 停止容器:docker stop 容器ID
  • 重啟容器:docker restart 容器ID
  • 啟動(新)容器:docker run -it ubuntu /bin/bash
  • 進入容器:docker attach 容器ID或docker exec -it 容器ID /bin/bash,推薦使用后者。

1. window 開發(fā)環(huán)境

docker 安裝
點擊下載
前期學習開發(fā)用,很方便
docker desktop compose,Docker,docker,前端,vue.jsdocker 下載并且運行
界面化了,當然也可以跟linux一樣使用指令...
docker desktop compose,Docker,docker,前端,vue.jsdocker 配置
運行后會彈出配置框
docker desktop compose,Docker,docker,前端,vue.js
可以在這里配置端口映射以及數(shù)據(jù)卷,用linux來說就是掛載,這邊給個9999端口號。
docker desktop compose,Docker,docker,前端,vue.js
點擊后運行容器,并且進來到這個頁面,當然也可以通過菜單的containers 進入到容器,直接可以看到容器里面的日志。
docker desktop compose,Docker,docker,前端,vue.js
還可以通過這里直接進入到該容器的命令行,相對于命令行是傻瓜式操作了。。。
docker desktop compose,Docker,docker,前端,vue.js
從容器列表中,點擊步驟2,就可以彈出來了,具體的nginx配置,到其他章節(jié)講,這里主要講安裝以及使用。

docker desktop compose,Docker,docker,前端,vue.js
每個容器都有對應(yīng)的暫停跟刪除按鈕,這里就不一一成列了。。。

2. linux 部署環(huán)境

  • 卸載docker
yum remove docker \
           docker-client \
           docker-client-latest \
           docker-common \
           docker-latest \
           docker-latest-logrotate \
           docker-logrotate \
           docker-selinux \
           docker-engine-selinux \
           docker-engine \
           docker-ce
  • 安裝
    Docker官方和國內(nèi)daocloud都提供了一鍵安裝的腳本,使得Docker的安裝更加便捷。

官方的一鍵安裝方式:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

國內(nèi) daocloud一鍵安裝命令:

curl -sSL https://get.daocloud.io/docker | sh

運行docker daemon

systemctl start docker

docker-compose

docker-compose 沒有圖形化界面,都是用命令的,這邊window+linux通用指令。

docker-compose 安裝

pip 部分環(huán)境可能要安裝一下

# 切換清華源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 安裝
sudo pip3 install docker-compose

在linux 環(huán)境出錯了,這里做下筆記,記錄解決方案,每臺服務(wù)器可能都不一樣,自己看情況。

  • 錯誤1
    docker desktop compose,Docker,docker,前端,vue.js

運行docker

sudo pip3 install --ignore-installed requests
  • 錯誤2:提示版本太低了,更新就好了

docker desktop compose,Docker,docker,前端,vue.js

pip3 install --upgrade pip

docker-compose 指令集

獲得一個命令的幫助
docker-compose 命令 --help

構(gòu)建并啟動所有容器,如果鏡像存在就重新構(gòu)建
docker-compose up -d --build

啟動所有服務(wù)
docker-compose up -d

構(gòu)建啟動nignx容器               
docker-compose up -d nginx       

-f 指定使用的Compose配置文件啟動,默認為docker-compose.yml,可以多次指定。
docker-compose -f docker-compose.yml up -d

運行一個服務(wù),并在服務(wù)上執(zhí)行一個命令
docker-compose run 容器id或容器名 ip addr

登錄到nginx容器中             
docker-compose exec nginx bash

此命令將會停止 up 命令所啟動的容器,并移除網(wǎng)絡(luò)
docker-compose down

列出項目中運行的所有容器
docker-compose ps

列出項目中運行及未運行的所有容器
docker-compose ps -a

列出所有運行的服務(wù)容器
docker-compose ls

列出所有服務(wù)容器(包括未運行的容器)
docker-compose ls -a

重新啟動nginx容器
docker-compose restart nginx          

構(gòu)建鏡像          
docker-compose build nginx            

不帶緩存的構(gòu)建       
docker-compose build --no-cache nginx     

查看各個服務(wù)容器內(nèi)運行的進程      
docker-compose top              

查看nginx的實時日志               
docker-compose logs -f nginx        

列出 Compose 文件包含的鏡像           
docker-compose images 

驗證文件配置,當配置正確時,不輸出任何內(nèi)容,當文件配置錯誤,輸出錯誤信息。                         
docker-compose config                

以json的形式輸出nginx的docker日志           
docker-compose events --json nginx        

暫停nignx容器     
docker-compose pause nginx         

恢復(fù)ningx容器            
docker-compose unpause nginx      

刪除容器(刪除前必須關(guān)閉容器,執(zhí)行stop)             
docker-compose rm nginx                       

強制刪除容器(不必先關(guān)閉容器)             
docker-compose rm -f nginx    

停止nignx容器         
docker-compose stop nginx       
    
啟動nignx容器           
docker-compose start nginx     

重啟項目中的nignx容器                
docker-compose restart nginx               

下載依賴的鏡像
docker-compose pull   

推送服務(wù)依的鏡像
docker-compose push

設(shè)置指定服務(wù)運行的容器個數(shù)。通過service=num的參數(shù)來設(shè)置數(shù)量
docker-compose scale web=3 db=2

查看版本信息
docker-compose version

docker-compose 使用

這里扔一個mysql+adminer(數(shù)據(jù)庫管理服務(wù))作為demo,后期完整的配置在后續(xù)文章中展示。

version: '3.4'
services:
  mysql1:  #mysql容器
    image: mysql 
    container_name: mysql1
    restart: always
    # 授權(quán)
    user: root
    privileged: true 
    environment:  ##設(shè)置環(huán)境便變量
      TZ: Asia/Shanghai  ##設(shè)置時區(qū)
      MYSQL_ROOT_PASSWORD: 123456 #這里自行設(shè)置root用戶的密碼
    command:  ##設(shè)置容器運行時執(zhí)行的命令
      --default-authentication-plugin=mysql_native_password
    volumes:
      - /C/docker-compose/mysql/datadir/:/var/lib/mysql
    ports:
      - 3306:3306  #宿主機和容器間的端口映射,可自行配置


  adminer1:    ##指定服務(wù)名為adminer
    image: adminer    ##指定要運行的鏡像為adminer adminer是一個mysql數(shù)據(jù)庫的web工具
    container_name: adminer1    ##指定容器名
    user: root
    privileged: true 
    restart: always    ##設(shè)置重啟策略為always
    ports:    ##指定映射的端口(宿主機端口:容器內(nèi)部端口)
      - 10080:8080
    depends_on:    ##設(shè)置容器的依賴關(guān)系,該adminer容器關(guān)聯(lián)mysql容器
      - mysql1      ##mysql這個鏡像安裝后,才會安裝這個鏡像

在該文件目錄中運行腳本。

# 記得先開打docker 服務(wù)...
# systemctl start docker
# 運行腳本
docker-compose up -d

docker desktop compose,Docker,docker,前端,vue.js
如果端口被占用了,記得先停止一下
docker desktop compose,Docker,docker,前端,vue.js
打開,adminer,根據(jù)配置文件填寫信息,記得服務(wù)器,這個比較尷尬,很多copy的文章都沒有提示這個…

docker desktop compose,Docker,docker,前端,vue.js
最終效果 ; )

docker desktop compose,Docker,docker,前端,vue.js文章來源地址http://www.zghlxwxcb.cn/news/detail-760555.html

到了這里,關(guān)于docker持久化部署vue前端nodejs后端項目-- 01. docker以及docker-compose在window以及l(fā)inux的安裝的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • yapi容器化docker部署以及mongodb容器的持久化掛載異常問題

    通過docker形式部署yapi,需要準備一個mongodb,然后直接在一個空文件夾里寫好Dockerfile,其中通過wget下載yapi的zip包。 基本按照這篇文章:https://www.modb.pro/db/149666 來處理即可 把mongodb的docker 跑起來, --auth 表示需要密碼才能訪問 注意 原文中啟動mongo的容器是這樣的 首先創(chuàng)建Mon

    2024年02月14日
    瀏覽(22)
  • 前端開發(fā)小技巧 - 【Vue3 + TS】 - 在 TS + Vue3 中使用 Pinia,實現(xiàn) Pinia 的持久化,優(yōu)化Pinia(倉庫統(tǒng)一管理)

    前端開發(fā)小技巧 - 【Vue3 + TS】 - 在 TS + Vue3 中使用 Pinia,實現(xiàn) Pinia 的持久化,優(yōu)化Pinia(倉庫統(tǒng)一管理)

    ts 中使用 pinia 和 Vue3 基本一致,唯一的不同點在于,需要根據(jù)接口文檔給 state 標注類型,也要給 actions 標注類型; 以下都是 組合式API 的寫法, 選項式API 的寫法大家可以去官網(wǎng)看看; Pinia; 持久化插件 - pinia-plugin-persistedstate; 目標文件: src/types/user.d.ts (這里以 user.d.t

    2024年04月09日
    瀏覽(30)
  • 微信小程序上傳頭像的臨時路徑,持久化保存到服務(wù)器與數(shù)據(jù)庫(nodejs后臺開發(fā))

    微信小程序上傳頭像的臨時路徑,持久化保存到服務(wù)器與數(shù)據(jù)庫(nodejs后臺開發(fā))

    從微信小程序中返回的用戶頭像臨時地址 http://tmp/H0GP7BW5HTQs846c0d9deef32d42f2203340efc4a5c3.jpeg 會失效,且只能一段時間內(nèi)在微信訪問,并且無法在公網(wǎng)訪問用戶頭像臨時地址avatarUrl。 所以需要將臨時地址avatarUrl轉(zhuǎn)成實際可用的地址保存到mysql數(shù)據(jù)庫的wxusers表的avatarUrl列中,同時將

    2024年02月14日
    瀏覽(104)
  • Docker 持久化

    Docker 持久化

    為了能夠保存(持久化)數(shù)據(jù)以及共享容器間的數(shù)據(jù), Docker 提出了 Volume 的概念。簡單來說, Volume 就是目錄或者文件,它可以 繞過 默認的聯(lián)合文件系統(tǒng),而以正常的文件或者目錄的形式存在于宿主機上。 數(shù)據(jù)卷方式: 數(shù)據(jù)卷是一個特殊的文件或者目錄,它將宿主機文件或

    2024年02月03日
    瀏覽(22)
  • Docker數(shù)據(jù)持久化

    Docker數(shù)據(jù)持久化

    在容器層的 UnionFS(聯(lián)合文件系統(tǒng))中對文件/目錄的任何修改,無論是手工修改還是 容器在運行過程中的修改,在該容器丟失或被刪除后這些修改將全部丟失。即這些修改是無 法保存下來的。若要保存下來這些修改,通常有兩種方式: 定制鏡像持久化:將這個修改過的容器

    2024年01月23日
    瀏覽(29)
  • Docker容器數(shù)據(jù)持久化

    Docker容器數(shù)據(jù)持久化

    Docker容器數(shù)據(jù)卷:volumes ? ? ? ?數(shù)據(jù)卷是經(jīng)過特殊設(shè)計的目錄,可以繞過聯(lián)合文件系統(tǒng),為一個或者多個容器提供訪問,數(shù)據(jù)卷設(shè)計的目的,在于數(shù)據(jù)的永久存儲,它完全獨立于容器的生存周期,因此,docker不會在容器刪除時刪除其掛載的數(shù)據(jù)卷,也不會存在類似的垃圾收集

    2024年02月10日
    瀏覽(38)
  • docker (五)-docker存儲-數(shù)據(jù)持久化

    docker (五)-docker存儲-數(shù)據(jù)持久化

    將數(shù)據(jù)存儲在容器中,一旦容器被刪除,數(shù)據(jù)也會被刪除。同時也會使容器變得越來越大,不方便恢復(fù)和遷移。 將數(shù)據(jù)存儲到容器之外,這樣刪除容器也不會丟失數(shù)據(jù)。一旦容器故障,我們可以重新創(chuàng)建一個容器,將數(shù)據(jù)掛載到容器里,就可以快速的恢復(fù)。 volume 卷 卷存儲在

    2024年02月20日
    瀏覽(29)
  • docker學習(十)Docker 持久化存儲

    docker學習(一)docker 概述 docker學習(二)docker 安裝部署 docker學習(三)常用命令 docker學習(四)使用 commit 制作鏡像 docker學習(五)使用 Dockerfile 制作鏡像 docker學習(六)卷 Volume docker學習(七)docker daemon docker學習(八)HTTP/HTTPS 代理 docker學習(九)docker 調(diào)試 docker學習

    2024年02月12日
    瀏覽(28)
  • Docker 數(shù)據(jù)持久化方案詳解

    Docker 數(shù)據(jù)持久化方案詳解

    目錄 一、Docker數(shù)據(jù)持久化概述 1.1聯(lián)合文件系統(tǒng) 1.2容器的數(shù)據(jù)卷 1.2.1 什么是數(shù)據(jù)卷 1.2.2 數(shù)據(jù)卷特點 1.2.3 Docker提供三種方式將數(shù)據(jù)從宿主機掛載到容器 二、 Docker持久化方案 2.1 查看volume 基本命令使用方法 2.2 volume持久化方案 2.2.1volume簡介 2.2.2.volume特點 2.2.3 掛載指定volume 2.

    2024年02月07日
    瀏覽(20)
  • Docker啥是數(shù)據(jù)持久化?

    Docker啥是數(shù)據(jù)持久化?

    ? 在容器層的 UnionFS(聯(lián)合文件系統(tǒng))中對文件/目錄的任何修改,無論是手工修改還是容器在運行過程中的修改,在該容器丟失或被刪除后這些修改將全部丟失。即這些修改是無法保存下來的。若要保存下來這些修改,通常有兩種方式: 定制鏡像持久化:將這個修改過的容

    2024年02月15日
    瀏覽(33)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包