2020AV天堂网,午夜色色视频,美女黄片免费观看,欧美黄色电影网站,亚洲人在线

新聞資訊

新聞資訊
首頁 > 新聞資訊 > 正文內(nèi)容

做網(wǎng)站教程csdn(阿里云做網(wǎng)站教程)

時間:2023-11-09 信途科技新聞資訊

作者 | Timothy Mugayi

譯者 | 彎月 責(zé)編 | 徐威龍

封圖| CSDN 下載于視覺中國

Docker容器已經(jīng)從一種錦上添花的技術(shù)轉(zhuǎn)變成了部署環(huán)境的必需品。有時,作為開發(fā)人員,我們需要花費大量時間調(diào)試或研究Docker工具來幫助我們提高生產(chǎn)力。每一次新技術(shù)浪潮來臨之際,我們都需要花費大量時間學(xué)習(xí)。

花費1-2天的時間來設(shè)置Docker集群,或找出導(dǎo)致Docker容器啟動失敗的代碼,你是不是也有過類似的經(jīng)歷?對于大多數(shù)開發(fā)人員來說,我們花費在研究配置和找bug上的時間似乎都超過了實際推出新功能的時間,尤其是當(dāng)你所使用的環(huán)境仍然相對較新或尚未成熟時。

我們中的有些人并沒有那么走運,無法通過完善的CI/CD流程打造穩(wěn)定的環(huán)境。為此,我從各大主流Docker技術(shù)文檔網(wǎng)站上搜羅和整理出了這份日常工作最常使用的Docker命令教程。

詳盡的可選標(biāo)志和參數(shù)的詳細列表,請參閱Docker手冊https://docs.docker.com/engine/reference/commandline/cli/

提示:每個Docker命令都有內(nèi)置的文檔,比如鍵入docker run --help就可以得到幫助文檔。鍵入docker run --help將生成以下幫助文檔。

我希望本文可以幫助你擺脫調(diào)試和使用Docker的煩惱。閱讀各個命令時,請注意命令的相關(guān)說明。

Docker構(gòu)建

$ docker build \

--build-arg ARTIFACTORY_USERNAME=timothy.mugayi \

--build-arg ARTIFACTORY_SECRET_TOKEN=AP284233QnYX9Ckrdr7pUEY1F \

--build-arg LICENSE_URL='https://source.com/license.txt' \

--no-cache -t helloworld:latest .

你可以使用可選的構(gòu)建參數(shù)構(gòu)建Docker鏡像。在默認情況下,Docker會緩存第一個Dockerfile構(gòu)建,或根據(jù)Dockerfile中的run命令向鏡像添加新層后的構(gòu)建,目的是加速后續(xù)構(gòu)建。

如果你不需要緩存,那么可以向上面的示例一樣添加一個不緩存的參數(shù)。

注意:Docker命令可以按名稱或Docker容器ID執(zhí)行。下述命令中的<CONTAINER>可以換成容器ID或容器名稱。

運行Docker容器

$ docker start <CONTAINER>

啟動一個已有的容器。我們假定該容器已經(jīng)下載并創(chuàng)建完畢。

$ docker stop <CONTAINER>

停止正在運行的Docker容器。

$ docker stop $(docker container ls -aq)

如果你有多個正在運行的Docker容器,而且你想停止所有容器,那么可以輸入docker stop以及所有容器ID的列表。

$ docker exec -ti <CONTAINER> [COMMAND]

在某個特定的容器內(nèi)運行一個shell命令。

$ docker run -ti — image <IMAGE> <CONTAINER> [COMMAND]

Docker run 與 start 有著明顯的區(qū)別。從根本上說,Docker run 做了兩件事情:(1)創(chuàng)建一個鏡像的新容器;(2)執(zhí)行這個容器。如果你希望重新運行失敗或退出的容器,請使用docker start命令。

$ docker run -ti — rm — image <IMAGE> <CONTAINER> [COMMAND]

這是一個很有趣的命令,旨在同時創(chuàng)建和啟動容器。它還想在容器內(nèi)運行命令,然后在命令執(zhí)行完成后刪除容器。

docker run -d <IMAGE>:<IMAGE_TAG>Usage:docker run -d helloworld:latest

如果你希望在分離狀態(tài)中啟動docker run命令(例如,作為Linux的后臺守護程序),則可以在run命令最后添加-d。

$ docker pause <CONTAINER>

暫停某個特定容器內(nèi)所有正在運行的進程。

$ docker ps -a

上述命令將列出之前運行的所有Docker鏡像。在找出你想運行的鏡像后,可以執(zhí)行如下命令。請確保更改容器ID,以反映最初的docker ps -a命令顯示的結(jié)果。

sudo docker run {container ID} -e AWS_DEFAULT_REGION=us-east-1 \

e INPUT_QUEUE_URL="https://sqs.us-east-1.amazonaws.com/my_input_sqs_queue.fifo" \

e REDIS_ENDPOINT="redis.dfasdf.0001.cache.amazonaws.com:8000" \

e ENV=dev \

e DJANGO_SETTINGS_MODULE=engine.settings \

e REDIS_HOST="cmgadsfv7avlq.us-east-1.redis.amazonaws.com" \

e REDIS_PORT=5439 \

e REDIS_USER=hello \

e REDIS_PASSWORD=trasdf**#0ynpXkzg

上述命令展示了如何運行帶有多個作為參數(shù)傳入的環(huán)境變量的Docker鏡像,\表示換行符。

調(diào)試Docker容器

你可以使用docker ps獲取當(dāng)前正在運行的容器名稱。

$ docker history <IMAGE>

example usage:

$ docker history my_image_name

上述命令可以顯示特定鏡像的歷史記錄。當(dāng)你想深入了解Docker鏡像時,這些信息非常有用。讓我們深入討論一下,因為你非常有必要了解這個命令的功能,而有關(guān)該命令的文檔少之又少。

在我們談?wù)揇ocker時,鏡像是建立在多層之上的,這些層是Docker鏡像的基礎(chǔ)。每個容器都包含一個可讀/可寫層的鏡像(你可以-將其視為持久狀態(tài)或文件)。在這之上才是其他只讀層。這些層(也稱為中間鏡像)是在執(zhí)行Docker鏡像的build命令時,執(zhí)行Dockerfile中的命令時生成的。

如果你的Dockerfile中包含from、run和/或copy指令,那么build該鏡像時,run指令就會用自己的鏡像ID創(chuàng)建一層。然后,該鏡像/層就會顯示在docker history中,而且還會顯示鏡像的ID以及生成日期。后續(xù)指令將生成另一個條目,依此類推。CREATED BY列大致對應(yīng)于Dockerfile中的一行。如下圖所示。

'docker history'命令的圖示

$ docker images

列出當(dāng)前存儲在機器中的所有鏡像。

$ docker inspect <IMAGE|CONTAINER ID>

Docker inspect將顯示有關(guān)特定Docker對象的低級信息。在調(diào)試的情況下, 存儲在該對象中的數(shù)據(jù)會非常有用,例如交叉檢查Docker掛載點。

請注意:該命令獲取兩個主要響應(yīng):鏡像級別的詳細信息和容器級別的詳細信息。你可以從該命令中獲取如下信息:

容器ID以及創(chuàng)建的時間戳

當(dāng)前狀態(tài)(在嘗試識別容器是否已停止以及為何停止時很有用)

Docker鏡像信息、文件系統(tǒng)綁定、卷信息以及掛載

環(huán)境變量,例如傳遞給容器的命令行參數(shù)

網(wǎng)絡(luò)配置:IPv4和IPv6的IP地址以及網(wǎng)關(guān)和輔助地址

$ docker version

這個命令顯示Docker的版本,包括計算機上當(dāng)前安裝的客戶端和服務(wù)器版本。

沒錯,Docker是一個客戶端-服務(wù)器應(yīng)用程序。守護程序(長期運行的Linux后臺服務(wù))是服務(wù)器,CLI是眾多客戶端之一。Docker守護程序會公開一個REST API,許多不同的工具可以通過該API與該守護程序進行通信。

$ docker version

Client: Docker Engine - Community

Version: 19.03.5

API version: 1.40

Go version: go1.12.12

Git commit: 633a0ea

Built: Wed Nov 13 07:22:34 2019

OS/Arch: darwin/amd64

Experimental: false

Server: Docker Engine - Community

Engine:

Version: 19.03.5

API version: 1.40 (minimum version 1.12)

Go version: go1.12.12

Git commit: 633a0ea

Built: Wed Nov 13 07:29:19 2019

OS/Arch: linux/amd64

Experimental: false

containerd:

Version: v1.2.10

GitCommit: b34a5c8af56e510852c35414db4c1f4fa6172339

runc:

Version: 1.0.0-rc8+dev

GitCommit: 3e425f80a8c931f88e6d94a8c831b9d5aa481657

docker-init:

Version: 0.18.0

GitCommit: fec3683

Docker版本輸出

這是如何設(shè)置客戶端-服務(wù)器體系結(jié)構(gòu)的圖像

AWS ECS上的Docker

有時,你需要進入運行中的Docker容器,調(diào)試或交叉檢查配置是否正確。

你可以使用docker exec -it <container ID> /bin/bash來獲取shell訪問權(quán)限。如果你想找出無法運行的Docker鏡像,例如你想使用AWS ECS集群,則會收到一則晦澀難懂的錯誤消息,如下所示。

坦白地說,引發(fā)這一錯誤的原因多種多樣,例如

1)你的代碼有問題,引發(fā)了未捕獲的異常,并且Docker容器在啟動時宕機;

2)在使用EC2實例上的ECS群集時,出現(xiàn)了磁盤空間不足的情況,如果你的ECS的放置類型沒有選擇Fargate就會出現(xiàn)這種問題;

3)你現(xiàn)有的Docker容器占用了所有EC2的可用內(nèi)存。

Essential container in task exited

執(zhí)行以下命令即可找出最近運行失敗的Docker容器。如果你的賬號擁有sudo訪問權(quán)限,請忽略sudo。你可以使用該命令,根據(jù)給定的輸出,通過重新運行容器來查看其失敗的原因。

$ sudo docker ps -a --filter status=dead --filter status=exited --last 1

如有疑慮,重啟Docker服務(wù)

$ sudo service docker stop$ sudo service docker start# on a MAC you an use the docker utilty or alternatively run$ killall Docker && open /Applications/Docker.app

相信無需進一步的解釋。

清理Docker鏡像

$ docker system prune

Docker在清理未使用的對象(例如鏡像、容器、卷和網(wǎng)絡(luò))方面采取了保守的態(tài)度。

除非你明確要求Docker刪除,否則通常不會刪除這些對象。因此,如果不刪除這些對象,那么很快就會占用大量空間。因此,定期運行下述命令,清理未使用的Docker鏡像非常重要。

docker kill <CONTAINER>

殺死某個正在運行的容器。

$ docker kill $(docker ps -q)

殺死所有正在運行的容器。

$ docker rm <CONTAINER>

刪除某個目前沒有運行的容器。如果鏡像保存在遠程鏡像庫中,那么不會受到影響。

$ docker rm $(docker ps -a -q):

刪除所有沒有運行的容器。

$ docker logs my_container

訪問容器的日志,在調(diào)試時非常有用。

從遠程鏡像庫中提取Docker鏡像

1、Docker Hub

Docker Hub是Docker提供的一項服務(wù),用于查找和共享打開的容器鏡像。

如果你希望從Docker Hub將鏡像拉取到本地,那么只需在Docker run命令后面加上鏡像路徑即可。以下命令說明了如何拉并運行穩(wěn)定版本的Rocker鏡像

$ docker run --rm -p 8787:8787 rocker/verse

Docker首先會嘗試檢查本地計算機上是否有該鏡像。如果沒有,在從Docker Hub庫中下載鏡像,這個功能是開箱即用的。

$ docker pull rocker/verse

如果你只想拉取鏡像,而不想運行鏡像,則只需運行docker pull即可。

如果你想登錄Docker Hub,則可以運行上述命令,然后輸入密碼即可。

2、自定義 Docker 鏡像庫

$ docker login your.docker.host.com

Username: foo

Password: ********

Email: user@myemail.com

如果你想從某個需要身份驗證的通用自定義Docker鏡像庫提取鏡像,則可以使用docker login命令,如上所示。請注意,執(zhí)行上述操作時,會在~/.docker/config.json

文件中創(chuàng)建一個條目。修改~/.docker/config.json可以修改身份驗證詳細信息。

3、亞馬遜ECR

亞馬遜ECR(Amazon Elastic Container Registry)是一個完全托管的Docker容器倉庫,允許開發(fā)人員存儲、管理和部署Docker容器鏡像。亞馬遜ECR與ECS(Elastic Container Service)無縫協(xié)作。如果你需要從ECR提取鏡像,則可以參照如下命令。

你需要使用擁有AWS訪問權(quán)限和密鑰的IAM用戶配置AWS CLI。

亞馬遜ECR要求IAM用戶訪問秘鑰必須通過某個IAM策略賦予ecr:GetAuthorizationToken的權(quán)限,然后才能通過鏡像庫的驗證并提取鏡像。另外,你可以利用亞馬遜ECR Docker Credential Helper實用程序。以下方法假定你使用的是AWS CLI,且已設(shè)置好所有權(quán)限。

$ aws ecr list-images --repository-name=twitter-data-engine-core$ aws ecr describe-images —- repository-name=twitter-data-engine-core$ aws ecr get-login —- region us-east-1 —- no-include-email

Get-login命令會生成一個長的Docker登錄命令。你只需復(fù)制并執(zhí)行。當(dāng)然首先必須先進行身份驗證,然后才能嘗試從AWS ECR執(zhí)行Docker鏡像提取。

$ docker login -u AWS -p {YOUR_TEMPORARY_TOKEN}$ docker pull 723123836077.dkr.ecr.us-east-1.amazonaws.com/twitter-data-engine-core:build-9

導(dǎo)入和導(dǎo)出Docker鏡像

$ docker save your_docker_image:latest > /usr/local/your_docker_image.tar$ docker load < /usr/local/your_docker_image.tar

如果你有需要,并且想將鏡像導(dǎo)出到硬盤,并加載到Docker鏡像,那么就可以執(zhí)行上述命令。

如果你想通過另一種媒介(Docker鏡像庫之外),將Docker鏡像從一臺機器轉(zhuǎn)移到另一臺機器,那么導(dǎo)出到文件非常有用。由于安全性,在某些環(huán)境中你的訪問可能會受到限制。你無法實施鏡像庫到鏡像庫的遷移,因此這是一個很實用的命令。

原文:

https://medium.com/better-programming/the-ultimate-docker-command-list-d98ef300fe6d

掃描二維碼推送至手機訪問。

版權(quán)聲明:本文由信途科技轉(zhuǎn)載于網(wǎng)絡(luò),如有侵權(quán)聯(lián)系站長刪除。

轉(zhuǎn)載請注明出處https://1.13.168.162/xintu/8494.html

相關(guān)文章

泰安精準(zhǔn)推廣引流(百度精準(zhǔn)引流推廣公司是真的假的)

齊魯晚報·齊魯壹點記者 韓曉婉一雞鳴五縣泰安精準(zhǔn)推廣引流,一路分兩州。走進肥城市孫伯鎮(zhèn)五埠村,200多套保留完整的明、清及民國時期傳統(tǒng)民居安靜地坐落村內(nèi)。依山而建的傳統(tǒng)民居全部為石頭建成,特色鮮明,其...

臨川網(wǎng)絡(luò)營銷的發(fā)展趨勢,思考網(wǎng)絡(luò)營銷今后如何發(fā)展

2020年網(wǎng)絡(luò)營銷的發(fā)展趨勢會是怎么樣2020年網(wǎng)絡(luò)營銷工程還是很有前景的,以后的網(wǎng)絡(luò)營銷是越來越好,我覺得做網(wǎng)絡(luò)營銷是非常不錯的。面對網(wǎng)絡(luò)直播營銷的快速發(fā)展,國家互聯(lián)網(wǎng)信息辦公室公安部文化和旅游部國...

濟寧推廣管理咨詢優(yōu)勢(濟寧網(wǎng)站推廣優(yōu)化公司)

濟寧推廣管理咨詢優(yōu)勢(濟寧網(wǎng)站推廣優(yōu)化公司)

網(wǎng)絡(luò)推廣公司 1、網(wǎng)絡(luò)推廣就是以企業(yè)產(chǎn)品或服務(wù)為核心內(nèi)容,建立網(wǎng)站,再把這個網(wǎng)站通過各種免費或收費渠道展示給網(wǎng)民的一種推廣方式。2、網(wǎng)絡(luò)營銷推廣主要由6個渠道組成,分別是搜索引擎推廣、新聞推廣、問答推...

婁煩網(wǎng)絡(luò)營銷婚姻案件律師的簡單介紹

太原婁煩縣涉外婚姻律師欄目為您提供在線免費法律咨詢和一對一電話咨詢服務(wù),在這里你可以方便快捷的找到你想要的太原婁煩縣涉外婚姻律師找法網(wǎng)幫。華律網(wǎng)婁煩縣婚姻家庭律師庫提供了專業(yè)律師在線咨詢服務(wù),我們將根...

安徽品牌推廣策劃費用(品牌策劃收費)

安徽品牌推廣策劃費用(品牌策劃收費)

請問百度品牌推廣怎么收費,多少錢一個月,謝謝 百度廣告費用是按照廣告被用戶點擊的次數(shù)進行收費,每點擊一次就收取一次費用。舉個簡單的例子:如果在百度推廣“服裝”廣告,每一次點擊費用為2元,一天被用戶點擊...

保健品廣告推廣(保健品廣告推廣方案)

保健品廣告推廣(保健品廣告推廣方案)

怎樣做好保健品的推廣?有什_有效的推廣方法,具體的推廣方案是什_? 作時尚類客戶、另一方面他們走的是網(wǎng)際網(wǎng)路產(chǎn)品的推廣,技術(shù)和市場了解都不錯。具體的推廣方案包括,1。網(wǎng)路 建站 2。SEO 。網(wǎng)路廣告...

現(xiàn)在,非常期待與您的又一次邂逅

我們努力讓每一次邂逅總能超越期待

  • 效果付費
    效果付費

    先出效果再付費

  • 極速交付
    極速交付

    響應(yīng)速度快,有效節(jié)省客戶時間

  • 1對1服務(wù)
    1對1服務(wù)

    專屬客服對接咨詢

  • 持續(xù)更新
    持續(xù)更新

    不斷升級維護,更好服務(wù)用戶