主頁 >  其他 > Docker基礎修煉1--Docker簡介及快速入門體驗

Docker基礎修煉1--Docker簡介及快速入門體驗

2020-09-12 04:13:08 其他

本文作為Docker基礎系列第一篇文章,將詳細闡述和分析三個問題:Docker是什么?為什么要用Docker?如何快速掌握Docker技術?

本系列文章中Docker的用法演示是基于CentOS7進行,因此假設讀者已經掌握了初步的Linux知識,如果你對Linux最基本的常用命令及操作還不太熟悉,請參考我之前寫的Linux入門系列教程,

一、Docker是什么

用簡單的一句話來概況:Docker就是一種容器虛擬化技術,

要了解Docker為什么會出現,它解決了什么樣的問題,那就要回顧下虛擬化技術及Docker的發展歷程,

1.1 虛擬化技術及分類

ps:相信大家如果安裝或使用過虛擬機VMware,或許你已經遇到過虛擬化技術的問題,正如我的Linux入門系列文章中的“linux入門系列1--環境準備及linux安裝”中的3.2.1提到,你可能會遇到“此主機至此Interl VT-x,但Interl VT-x處于禁用狀態“這個問題,如果要在VMware中安裝Linux,那就要在BIOS中開啟虛擬化支持,

虛擬化技術是一個通用的概念,不同領域可以有不同的理解,而在計算機領域中通常是指計算虛擬化或服務器虛擬化,它的核心是對資源進行抽象,以能在同一個主機上同時運行多個系統或軟體應用為目標,從而提高服務器系統資源的利用率,降低成本,方便對應用的生命周期進行管理,

虛擬化技術分類總體上分為2大類:基于硬體的虛擬化基于軟體的虛擬化

真正意義上基于硬體的虛擬化并不多見,而基于軟體的虛擬化從物件所在的層次,又可以分為應用虛擬化平臺虛擬化,應用虛擬化一般是指通過軟體去模擬設備,而我們通常所說的虛擬化技術大多數情況下指的是平臺虛擬化技術,

平臺虛擬化又可以細分為以下幾類:

  • 完全虛擬化

虛擬機模擬完的底層硬體環境和特權指的執行程序,客戶作業系統無須進行修改,比如:VirtualBox、VMware Workstation

  • 硬體輔助虛擬化

利用硬體主要是CPU來輔助支持處理敏感指令來實作完全虛擬化的功能,客戶作業系統無須修改 ,目前86體系結構上可用的硬體輔助虛擬化技術包括Intel-VT和AMD-V, 比如:VMware Workstation、Xen、KVM

  • 部分虛擬化

只針對部分硬體資源進行虛擬化,客戶作業系統需要進行修改,

  • 超虛擬化

部分硬體介面以軟體的形式提供給客戶機作業系統, 客戶作業系統需要進行修改,

  • 作業系統級別虛擬化

內核通過創建多個虛擬的作業系統實體(包括內核和庫)來隔離不同的行程,我們通常所說的容器相關技術屬于此分類,而Docker則是這眾多容器技術中的一種

如果要說Docker與虛擬化技術之間的關系,我認為可以概括為:虛擬化技術經過發展,從以前通過硬體層面來實作虛擬化的傳統方式,逐步演變為當今流行的基于作業系統層面的容器化方式,而Docker則作為容器化技術的佼佼者脫穎而出

1.2 Docker的前世今生

Docker是基于Go語言實作的開源容器專案,Docker專案已加入Linux基金會,并遵循Apache協議, 全部開源代碼均在https://github.com/docker專案倉庫進行維護,

正如官方網站所說,Docker的理念就是“Build Ship and Run Any App, Anywhere”,即通過對應用的封裝( Packaging )、分發( Distribution )、部署( Deployment )、運行( Runtime )生命周期進行管理,簡單說就是一次封裝 ,到處運行

Docker目前已得到各大主流作業系統的支持,包括Linux各大發行版、Windows、MacOS等均可以安裝使用,同時各大云服務提供商如IBM、Amazon、Azure等云平臺均提供對Docker的集成支持,

那么Docker為什么會發展的如此迅速呢?

正如Docker創始人說的,Docker只是在正確的時間和正確的地點做了正確的事情,它的出現并非偶然,它其實也是站在了前人LXC的肩膀上發展而來,LXC(Linux Containers)也就是平常說的Linux容器技術,對于LXC更多細節就不多說了,簡單說就是LXC經過長期的發展,踩了很多坑,然后被集成到了主流Linux的內容中,正是這樣才為Docker的誕生鋪平了前期的道路,

Docker在LXC的基礎上,進一步優化了容器的使用體驗,才使得容器化技術得到普及,比如它提供了各種容器管理工具來實作應用的分發、版本移植等,讓用戶無需關注底層操作;同時也引入分層檔案系統和高效的鏡像機制,極大的降低遷移難度,早期Docker是直接基于LXC的,到0.9版本之后開發了libcon-tainer專案作為更廣泛的容器驅動實作,從而替換掉了LXC的實作,,試圖讓容器的支持不再局限于Linux作業系統,而是更安全、更開放、更具擴展性,

正是基于Linux平臺上的多項開源技術,Docker提供了高效、敏捷和輕量級的容器方案,并支持部署到本地環境和多種主流云平臺,可以說Docker首次為應用的開發 、運行和部署提供了“ 一站式”的實用解決方案

1.3 Docker核心概念

Docker包含三大核心概念:鏡像、容器、倉庫,基礎部分功能都是圍繞他們進行展開,因此先有個簡單的印象即可,

  • 鏡像

可以簡單理解為一個只讀的模板或者應用程式及其環境的打包,后邊的容器就是通過它來進行創建,它類似于虛擬機鏡像,如果你有面向物件的編程經驗,也可以把它理解為一個物體類(Class),

  • 容器

簡單理解為一個沙盒,用來運行和隔離我們開發的應用程式,你可以理解為正在運行的一個虛擬機,也可以理解為通過物體類Clss創建的一個物件,鏡像是靜態的,容器是動態的,

  • 倉庫

倉庫就是集成存放鏡像的地方,Docker倉庫類似于代碼倉庫,如果你有Git和Maven的使用經驗,那就很好理解了,

官方提供的倉庫為Docker Hub,但有時候國外網速不太理想,因此國內云廠商如阿里云、網易云等也提供了鏡像倉庫的本地源,當然也可以自己搭建私有倉庫,

二、為什么用Docker

要搞清楚我們為什么要用Docker,那就來先看看Docker都能干些啥?

2.1 Docker快速部署和分發

正如Docker的理念宣言:一次打包,處處運行,由于Docker鏡像是將我們開發的應用程式和他運行所需的環境一起打包,它帶來的好處非常明顯,尤其是快速部署和分發能力,

舉個簡單的例子,假設我們之前開發了某個軟體部署在了某一臺服務器上,但是因為種種原因,我們希望把該軟體部署到另外一臺服務器上,通常情況下我們需要怎么做呢?我們需要登錄到新的服務器上,按照之前的方法重復部署一次運行環境,然后運行觀察結果,還擔心環境的變化帶來未知的影響,那如果是用Docker會怎么樣呢?我們只需要把相應的鏡像下載下來然后運行起來即可,快速且省心,

還記得前面系列文章的LNMP環境搭建嗎?“linux入門系列20--Web服務之LNMP架構實戰”,是不是感覺非常麻煩呢?這個程序少說也得半小時,如果我們換為Docker進行部署的話,也就分分鐘就可以搞定,后文會演示采用Docker的方式來部署LNMP,到時候會有一個非常直觀的對比,相信你一定會愛上Docker,

2.2 Docker在開發運維DevOps中的優勢

采用Docker可以做到一次打包,處處運行,

由于鏡像中已經包含了環境,因此不會存在開發人員本地開發運行沒問題,但是交給運維人員運行就有問題的情況,同時它使得遷移、擴展和更新管理變得更加容易,極大減少了重復勞動、有效解放了運維人員,

2.3 Docker與虛擬機對比

容器化技術在性能上完勝虛擬機,

Docker容器除了運行其中的應用外,基本不消耗額外的系統資源,在保證應用性能的同時,盡量減小系統開銷,

傳統虛擬機方式運行N個不同的應用就要啟用N個虛擬機,每個虛擬機需要單獨分配獨占的記憶體、磁盤等資源,而Docker只需要啟動N個容器,并將應用放進容器內即可,

它的啟動速度、性能、記憶體代價、遷移性等都完勝虛擬機,

2.4 Docker在微服務中的應用

微服務架構是當前軟體開發領域的熱點技術之一,如果你是開發人員或者了解開發技術,相信你一定聽過單體應用和微服務這二個名詞,

在軟體架構演程序序中,曾經一個歸檔包(如war包)包含了所有應用程式的功能,比如一個Web系統我們所有功能模塊都放在一起,通常就稱為單體應用,盡管你可以在專案內部進行了模塊化開發,但是所有業務功能都包含在一個專案中,這樣復雜度高、部署麻煩,可靠性也差,比如只修改了其中很小一個功能也得重新部署;其中某一小部分出現問題也會導致整個系統出現問題,

為了解決這些情況,于是就產生了微服務架構,如果是Java開發,那主要就是指Spring Boot和Spring Cloud技術堆疊,微服務就是要求功能拆分,業務單一,把復雜系統拆分為各個可靠的小模塊,這雖然有很多優勢,但同時也增加了運維和管理的難度,

雖然微服務架構容器一旦非常多的時候,管理起來有點麻煩,但Docker能很好的對各個容器進行管理、彈性擴容等,因此往往會采用SpringBoot+SpringCloud+Docker的微服務架構模式,

2.5 Docker在大資料中的應用

在傳統的大資料架構中都通常會部署Hadoop、Hbase、Kafka、Zookeeper、Flink、Spark等等集群,如果都手動或者采用腳本去進行管理效率非常低,并且應對彈性擴容或縮容、遷移的情景是控制還需要做些額外的作業,而如果采用Docker進行管理和容器化的部署,這一切將會變得更加簡單,

這一部分的演示將會在后續分享完大資料相關知識后在回傳來進行對比,敬請期待,

2.6 Docker各大企業中的應用案例

Docker容器技術以及在各大企業中得到了充分的驗證,如:京東618、美團點評、騰訊、新浪、蘑菇街等等,

  • Docker在京東618的應用

2016年京東彈性云團隊,從1萬Docker到15萬,從試水部分應用到承擔全部流量,經過了618的嚴格考驗,

  • Docker在美團點評中的應用

2015年,美團云團隊開始試水Docker容器集群管理平臺,經過一些列的優化和完善,前該平臺為美團點評的外賣、酒店、到店、貓眼等十幾個事業部提供容器計算服務,承載線上業務數百個,業務型別涵蓋Web、資料庫、快取、訊息佇列等,

  • Docker在騰訊的應用

騰訊2014年10月份正式上線 Docker,其基于 Yarn 的代號為Gaia的調度平臺可以同時兼容 Docker 和非Docker 型別的應用,其上層業務包括離線、實時以及在線 service 服務,如 Hadoop MR、Spark、Storm、Hive 以及騰訊內部的 Lhotse、Hermes、廣點通等業務,

  • Docker在新浪微博中的應用

新浪微博的DCP是基于Docker的混合云架構,在2014年做了Docker容器化,2015年做了私有云+混合云以及還有動態調度,在2016年從容應對十億級PV、千億級資料、2000臺以上的服務器規模、20個以上的大小服務模塊、百億級資料Hbase存盤、千臺以上的Docker混合云集群,

  • Docker在蘑菇街的應用

蘑菇街的私有云專案于2014年圣誕節期間上線,把應用進行拆分,變成一個個微服務,實作PaaS基于應用的部署和發布,經歷了 幾次雙11大促,已經逐漸形成了一定的規模,

三、Docker怎么用

3.1 相關網站

  • 官網

https://www.docker.com/

從官網可以看到Docker分為社區版(CE)和企業版(EE),一般情況下使用社區版即可,

  • 在線Docker練習

https://labs.play-with-docker.com/

該網站是Docker船長為了幫助大家學習Docker而花了幾天時間開發的一款基于瀏覽器的產品,play-with-docker,人稱PWD,它是一個Docker的演練場,

它可以讓用戶在幾秒鐘內在瀏覽器中體驗免費的Alpine Linux虛擬機,運行Docker命令,可以構建、運行Docker容器,甚至可以在Docker Swarm模式下創建集群,除了演練場之外,PWD還包含了一個由大量Docker labs實體和測驗,

如果你只是想快速體驗一下Docker,你甚至都不用本地裝環境就可以馬上體驗,注冊一個賬戶或者直接用Docker Hub的賬戶即可登錄進入體驗,

3.2 Docker安裝

正如前文提到支持Linux、Windows、MacOS等,但生產環境我們一般是在Linux中使用,因此本文將演示在Centos7下Docker的安裝和使用,

Docker的安裝也非常簡單,只需要按照官網提示操作即可,

官網介紹的安裝有三種:rpm、yum、腳本方式

接下來采用YUM的方式進行安裝

3.2.1 準備虛擬機

配置好IP地址,同時為了減少干擾,關閉防火墻和SELinux,

如果你的系統比較老舊需要yum更新一下,此步驟不是必須的,

[root@docker ~]# yum update -y
3.2.2 安裝必須的包
[root@docker ~]# yum install -y yum-utils \ device-mapper-persistent-data \ lvm2
...省略部分輸出內容
Complete!
[root@docker ~]# 
3.2.3 設定倉庫
[root@docker ~]# yum-config-manager  --add-repo https://download.docker.com/linux/centos/docker-ce.repo
...省略部分輸出內容
repo saved to /etc/yum.repos.d/docker-ce.repo
[root@docker ~]# 

此處直接用官方的倉庫https://download.docker.com/linux/centos/docker-ce.repo,如果你網速慢也可以換成國內的倉庫,如阿里云的,

3.2.4 安裝Docker
[root@docker ~]# yum install docker-ce
...省略部分輸出內容
Complete!
[root@docker ~]# 

安裝程序中按3次y進行確認即可,此程序跟網速有關,一般10多分鐘即可安裝完成,

由于該命令后沒有帶具體的版本號,因此默認的tag為lastest,所以不同時間去執行有可能版本會不一樣,生產環境建議帶上指定的版本號,

3.2.5 啟動Docker

安裝完成后Docker是沒有啟動的,因此需要先啟動Docker,并設為開機啟動,可以通過systemctl status docker查看Docker的狀態,

[root@docker ~]# systemctl start docker
[root@docker ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
[root@docker ~]# systemctl status docker
   docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2020-02-26 21:39:22 CST; 1min 30s ago
     Docs: https://docs.docker.com
 Main PID: 57003 (dockerd)
   CGroup: /system.slice/docker.service
...省略部分內容

可以看到處于running狀態,至此docker安裝并啟動成功,

3.2.6 查看版本及Docker資訊

查看版本資訊

[root@docker ~]# docker -v
Docker version 19.03.6, build 369ce74a3c

查看docker安裝資訊

[root@docker ~]# docker info
...省略部分內容
 Docker Root Dir: /var/lib/docker
...省略部分內容

可以看到默認的安裝路徑為/var/lib/docker

3.3 運行第一個容器HelloWorld

3.3.1 創建第一個容器

我們通過Docker Hub上官方提供的現成的hello-world鏡像來創建一個容器,創建容器使用docker run 命令,該容器的功能就是創建并啟動后輸出helloworld字樣,

[root@docker ~]# docker run hello-world 
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
1b930d010525: Pull complete 
Digest: sha256:fc6a51919cfeb2e6763f62b6d9e8815acbf7cd2e476ea353743570610737b752
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

[root@docker ~]# 

可以看到容器成功運行了,并且輸出了hello from docker!

此時采用docker images命令查看本地的鏡像,可以看到一個名為hello-world的鏡像,

[root@docker ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              fce289e99eb9        14 months ago       1.84kB
[root@docker ~]# 
3.3.2 hello-world容器原理分析

運行一個容器,實際上就是運行容器內部的程式,就像我們平時做helloworld程式,我們需要用java或者其他語言進行開發,然后打包為jar檔案,然后通過java命令執行,每次需要運行該程式都需要做手動執行命令,而在docker中,我們把helloworld對應的jar包打包到容器中,只需要run容器,程式就可以立即執行,是不是很方便呢?

我們分析一下hello-world容器運行的原理:首先我們看到“Unable to find image 'hello-world:latest' locally”這樣的提示,說明本地沒有這個hello-world鏡像,他會自動從Docker Hub倉庫去下載該鏡像,然后在創建容器并運行容器內的helloworld程式,這個程序都是自動化完成的,

并且啟動的這個容器其實就相當于是一個小型的linux系統,但是啟動的非常快,幾秒鐘就啟動并運行了,這也正是之前談到的和虛擬機相比的優勢,

至于它為什么這么快?以及這個容器內究竟有什么東西?可以執行哪些docker命令?在后續文章中你將找到答案,

這樣Docker環境就準備好了,下一篇文章開始,我們正式來演示Docker中各種命令的使用方法,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/10497.html

標籤:其他

上一篇:今天,我也做開源了

下一篇:訊息佇列 NSQ 原始碼學習筆記 (一)

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more