linux 操作docker的基本命令docker倉庫

基本操作命令

docker run --name=test-host -itd centos7.6 /bin/bash??通過鏡像創建容器

登錄容器

[root@docker101 ~]# docker exec -it test-host /bin/bash? (exec是執行,i是交互式。t叫tty)

或者container id

[root@docker101 ~]# docker exec -it 0d371349d2ef /bin/bash

docker search 172.16.8.100:5000/centos 查詢服務器鏡像

docker pull 172.16.8.100:5000/centos7 拉去服務器鏡像

docker? images? ?查詢本地鏡像

docker tag 修改鏡像名稱

[root@docker ~]# docker inspect nginx? ?獲取鏡像的元數據

docker push 上傳數據

docker rmi 刪除鏡像

docker? run? --name=web1? -d? nginx? ? 運行容器

只顯示運行中容器

?docker ps

顯示所有容器

?docker ps --all

docker? stop? web1? (容器名字)

docker? start? ?web1? ? (啟動容器)

docker? pause? web1(容器名字)? ? ?掛起web1

docker? ?kill? ?web 1? (容器名字)? ? 殺死web1

?docker rm? ?web? (容器運行狀態刪不掉)? ??docker rm?-f? web? (強制刪除)

?docker倉庫

Registry Server

服務端(倉庫端): 10.0.0.103

[root@docker103 ~]# docker pull registry? ?(下載倉庫)

[root@docker103 ~]# docker run --name registry_server -d -p 5000:5000 registry (運行倉庫指定端口)

客戶端:

docker軟件安裝

[root@docker101 ~]# vim /usr/lib/systemd/system/docker.service

[Service]

Type=notify

# the default is not to use systemd for cgroups because the delegate issues still

# exists and systemd currently does not support the cgroup feature set required

# for containers run by docker

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 10.0.0.103:5000? ? 信任本地的倉庫,免驗證

重啟服務? ? ?xiiu改完了,要重新加載啟動一些服務

[root@docker101 ~]# systemctl daemon-reload

[root@docker101 ~]# systemctl restart docker

修改需要上傳鏡像名稱:

[root@docker101 ~]# docker images

REPOSITORY TAG IMAGE ID CREATED SIZE robinround/centos7.6 latest 0429a3daccd0 13 months ago 433MB vitotp/centos7.6 latest 0429a3daccd0 13 months ago 433MB

修改標簽

[root@docker101 ~]# docker tag vitotp/centos7.6 10.0.0.103:5000/centos7.6

上傳

[root@docker101 ~]# docker push 10.0.0.103:5000/centos7.6

doocker? 倉庫里的鏡像下載方法??

查詢私有倉庫內的鏡像? ? ?

[root@docker102 ~]# curl -XGET http://10.0.0.103:5000/v2/_catalog

{"repositories":["centos7.6"]}

查詢標簽列表

[root@docker102 ~]# curl -XGET http://10.0.0.103:5000/v2/centos7.6/tags/list

{"name":"centos7.6","tags":["latest"]}

docker? pull 10.0.0.103:5000/centos:7.6? ? 下載docker倉庫里的centos

harbor

harbor的部署

更換華為yum安裝源

[root@master ~]# mkdir /etc/yum.repos.d/old

[root@master ~]# mv /etc/yum.repos.d/* /etc/yum.repos.d/old/

[root@master ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-7-anon.repo

[root@master ~]# yum makecache fast

安裝擴展源

[root@master ~]# yum install epel-release.noarch

安裝docker-ce源

[root@master ~]# wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo

[root@master ~]# yum install docker-ce

[root@master ~]# yum install docker-compose

啟動docker

[root@master ~]# systemctl restart docker

?

安裝harbor

https://github.com/vmware/harbor/releases

安裝有兩種方式,一種是off-line ,一種是on-line,即離線和在線安裝,離線安裝需要下載的安裝包較大,在線安裝下載的安裝包很小,可以根據自己的情況選擇,我選擇的是harbor-online-installer-v2.0.0.tgz 版本

[root@master ~]# tar -xvf harbor-online-installer-v2.0.0.tgz;cd harbor/

拷貝配置文件

[root@master harbor]# cp harbor.yml.tmpl harbor.yml

配置https:harbor默認工作方式是http,但是這只能在頁面訪問,默認harbor推送拉取鏡像時走的是https,所以需要配置下https。

1.需要的文件:

1. master.crt:服務器端的證書文件

2. master.key:服務器端的秘鑰

3. ca.crt:客戶端的證書文件

2.生成ca秘鑰和自簽名ca證書:

[root@master harbor]# openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 -out ca.crt

Country Name (2 letter code) [XX]:CN

State or Province Name (full name) []:BJ

Locality Name (eg, city) [Default City]:BJ

Organization Name (eg, company) [Default Company Ltd]:EAST

Organizational Unit Name (eg, section) []:IT

Common Name (eg, your name or your server's hostname) []:master.com

Email Address []:

3.生成證書簽名請求(域名訪問,就把common name的值寫為域名):

[root@master harbor]# openssl req -newkey rsa:4096 -nodes -sha256 -keyout master.com.key -out master.com.csr

-----

Country Name (2 letter code) [XX]:CN

State or Province Name (full name) []:BJ

Locality Name (eg, city) [Default City]:BJ

Organization Name (eg, company) [Default Company Ltd]:EAST

Organizational Unit Name (eg, section) []:IT

Common Name (eg, your name or your server's hostname) []:master.com

Email Address []:

Please enter the following 'extra' attributes

to be sent with your certificate request

A challenge password []:

An optional company name []:

4.生成證書

[root@master harbor]# openssl x509 -req -days 365 -in master.com.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out master.com.crt

Signature ok

subject=/C=CN/ST=BJ/L=BJ/O=EAST/OU=IT/CN=master.com

Getting CA Private Key

5.將harbor目錄移動到/etc下

[root@master ~]# cp -r /root/harbor /etc/

6.配置證書和私鑰文件位置

[root@master ~]# vim /etc/harbor/harbor.yml

7.執行install.sh安裝harbor

[root@master ~]# /etc/harbor/install.sh

成功后:

? ----Harbor has been installed and started successfully.----

8.

訪問:https://192.168.0.200/harbor

置下host,打開瀏覽器就可以用https訪問了

默認賬號是 admin 密碼 Harbor12345

9.docker登錄

首先配置host,然后在 /etc/docker/certs.d目錄下創建目錄,目錄名稱就是配置的hostname。然后將客戶端證書放入該目錄即可。

[root@master ~]# mkdir -p /etc/docker/certs.d/master.com

[root@master ~]# cp /etc/harbor/ca.crt /etc/docker/certs.d/master.com

[root@master ~]# docker login master.com

Username: admin

Password: Harbor12345

WARNING! Your password will be stored unencrypted in /root/.docker/config.json.

Configure a credential helper to remove this warning. See

docker login | Docker Docs

Login Succeeded

10.docker推送鏡像:

登錄harbor,可以看到有一個預置的項目,library。

11.測試推送

[root@master ~]# docker pull lanvv/centos7.5-yum

[root@master ~]# docker tag lanvv/centos7.5-yum master.com/library/centos7.5

[root@master ~]# docker push master.com/library/centos7.5

The push refers to repository [master.com/library/centos7.5]

214ee3fcbf95: Pushed

1d31b5806ba4: Pushed

latest: digest: sha256:8b6ce104f680f69dd67443068fd92d1692e8eb707d80dbefdff7232570aa907d size: 737

已上傳成功

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/87077.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/87077.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/87077.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Netty學習路線圖 - 第四階段:Netty基礎應用

Netty學習路線圖 - 第四階段:Netty基礎應用 📚 Netty學習系列之四 本文是Netty學習路線的第四篇,我們將用大白話講解Netty的基礎應用,帶你從理論走向實踐。 寫在前面 大家好!在前面三篇文章中,我們學習了J…

開源項目推薦:MCP Registry——管理MCP服務器的利器

探索MCP Registry:未來模型上下文協議的核心注冊服務 隨著人工智能技術的迅速發展,機器學習模型的管理和配置變得愈發重要。今天,我們將探索一個頗具潛力的開源項目——MCP Registry。這是一個由社區驅動的注冊服務,專為模型上下文協議(Model Context Protocol,簡稱MCP)…

Spring Boot 統一功能處理:攔截器詳解

一、攔截器核心概念 作用:攔截器是 Spring 框架提供的核心功能,用于在請求處理前后執行預定義邏輯,實現統一處理(如登錄校驗、日志記錄等)。 核心方法: public class LoginInterceptor implements Handl…

在docker容器中安裝docker服務,基于fuse-overlayfs進行overlay掛載,而不是vfs

1、docker 安裝 正常安裝docker軟件,運行docker時,會提示:No docker socket 服務 2、啟動docker服務(包含守護進程) systemctl start docker #dockerd &if ! ps aux | grep -v grep | grep -q "dockerd&qu…

虛擬機配置注意事項

一.VM大部分產品免費,遇到付費的要斟酌一下 在小編之前的文章中有簡單下載VM的教程VMwareWorkstPro安裝-CSDN博客 二.配置過程中的設置大部分都可以在配置完成后更改 例如下圖設備所涉及到的,都是可以更改設置的 三.電腦關機時,要注意先把…

openGL+QT快速學習和入門案列

openGLQT快速學習和入門案列

深度學習03 人工神經網絡ANN

什么是神經網絡 人工神經網絡( Artificial Neural Network, 簡寫為ANN)也簡稱為神經網絡(NN),是一種模仿生物神經網絡結構和功能的計算模型,人腦可以看做是一個生物神經網絡,由眾多的神經元連接而成.各個神經元傳遞復…

Linux中部署Jenkins保姆間教程

本文將以docker的方式,講述如何部署Jenkins 一、拉取Jenkins鏡像 1.1 最新版Jenkins介紹 最新版Jenkins地址:Download and deploy 當前最新版的如下圖所示: 1.2 各版本支持的JDK版本 地址如下:Java Support Policy 如果你安裝…

【軟考中級·軟件評測師】下午題·面向對象測試之架構考點全析:分層、分布式、微內核與事件驅動

一、分層架構:分層獨立與質量特性的雙向約束 分層架構通過“垂直分層(表示層→服務層→業務邏輯層→數據層)”實現職責隔離,是Web應用、企業級系統的主流架構模式。 1. 父類成員函數重測場景 子類繼承父類時,若父類…

C++ 快速回顧(五)

C 快速回顧(五) 前言一、Dll和Lib的區別區別在開發中使用 二、封裝并使用C庫1.封裝庫2.使用庫 三、封裝并使用C庫1.封裝庫2.使用庫 前言 用于快速回顧之前遺漏或者補充C知識 一、Dll和Lib的區別 靜態庫(LIB)在編譯時鏈接&#…

【ARM】解決ArmDS的工程沒有生成Map文件的問題

1、 文檔目標 在嵌入式開發過程中,使用Arm Development Studio(簡稱ArmDS)進行項目構建時,Map文件的生成是調試和分析代碼的重要環節。Map文件不僅記錄了程序中各個段(sections)的內存分布情況&#xff0c…

Java如何導出word(根據模板生成),通過word轉成pdf,放壓縮包

<!-- 導出word文檔所需依賴--><dependency><groupId>com.deepoove</groupId><artifactId>poi-tl</artifactId><version>1.10.0-beta</version></dependency><dependency><groupId>org.apache.poi</gr…

【C#】 DevExpress.XtraEditors.SidePanel

DevExpress.XtraEditors.SidePanel&#xff0c; 它是 DevExpress 提供的“側邊滑出”面板&#xff08;類似于抽屜、浮動信息區&#xff09;&#xff0c;非常適合做可隱藏的參數區、幫助區、臨時交互區等。 SidePanel 用法核心點 1. 基本用法 可容納其它控件&#xff0c;就像普…

1.1_2 計算機網絡的組成和功能

在這個視頻中&#xff0c;我們會探討計算機網絡的組成和功能。我們會從三個視角去探討計算機網絡由哪些部分組成&#xff0c;其次&#xff0c;我們會簡單的了解計算機網絡的功能。 首先我們可以把計算機網絡看作是由硬件、軟件和協議共同組成的一個龐大復雜的系統。首先在硬件上…

Linux驅動學習day11(定時器)

定時器 定時器主要作用就是&#xff1a;設置超時時間&#xff0c;執行超時函數。 按鍵按下存在抖動&#xff0c;為了消除抖動可以設置定時器&#xff0c;如上圖所示&#xff0c;按下一次按鍵會產生多次抖動&#xff0c;即會產生多次中斷&#xff0c;在每次中斷產生的時候&…

Java 編程之觀察者模式詳解

一、什么是觀察者模式&#xff1f; 觀察者模式&#xff08;Observer Pattern&#xff09;是一種行為型設計模式&#xff0c;用于對象之間的一對多依賴關系&#xff1a;當被觀察對象&#xff08;Subject&#xff09;狀態發生變化時&#xff0c;所有依賴它的觀察者&#xff08;O…

【C++】經典string類問題

目錄 1. 淺拷貝 2. 深拷貝 3. string類傳統寫法 4. string類現代版寫法 5. 自定義類實現swap成員函數 6. 標準庫swap函數的調用 7. 引用計數和寫時拷貝 1. 淺拷貝 若string類沒有顯示定義拷貝構造函數與賦值運算符重載&#xff0c;編譯器會自動生成默認的&#xff0c…

kotlin中object:的用法

在Kotlin中&#xff0c;object: 用于聲明匿名對象&#xff08;Anonymous Object&#xff09;&#xff0c;這是實現接口或繼承類的輕量級方式&#xff0c;無需顯式定義具名類。以下是核心用法和場景&#xff1a; 1. 基本語法 val obj object : SomeInterface { // 實現接口ov…

js代碼04

題目 非常好。我們剛剛看到了回調函數在處理多個異步操作時會變得多么混亂&#xff08;回調地獄&#xff09;。為了解決這個問題&#xff0c;現代 JavaScript 提供了一個更強大、更優雅的工具&#xff1a;Promise。 Promise&#xff0c;正如其名&#xff0c;是一個“承諾”。…

Jenkins初探-通過Docker部署Jenkins并安裝插件

簡介 本文介紹了使用Docker安裝Jenkins并進行初始配置的完整流程。主要內容包括&#xff1a; (1)通過docker pull命令獲取Jenkins鏡像&#xff1b;(2)使用docker run命令啟動容器并映射端口&#xff1b;(3)訪問Jenkins界面獲取初始管理員密碼&#xff1b;(4)安裝推薦插件并創…