千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時隨地免費學(xué)

千鋒教育

掃一掃進入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時隨地免費學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > Python技巧|Docker框架使用系列教程(六)創(chuàng)建鏡像

Python技巧|Docker框架使用系列教程(六)創(chuàng)建鏡像

來源:千鋒教育
發(fā)布人:小千
時間: 2021-04-23 09:15:00 1619140500

      到這里docker系列教程已經(jīng)是第六期了,今天我們來給大家介紹一下docker鏡像的創(chuàng)建方法,還是老規(guī)矩喜歡的話記得收藏起來。

      創(chuàng)建鏡像

      當(dāng)我們從 docker 鏡像倉庫中下載的鏡像不能滿足我們的需求時,我們可以通過以下兩種方式對鏡像進行更改。

      1、從已經(jīng)創(chuàng)建的容器中更新鏡像,并且提交這個鏡像

      2、使用 Dockerfile 指令來創(chuàng)建一個新的鏡像

1

      創(chuàng)建Docker賬號

      共享和發(fā)布鏡像時構(gòu)建鏡像中重要的環(huán)節(jié),可以將鏡像推送到Docker Hub或資金的私有Registry中。

2

3

      這條命令會完成登錄,并將認證信息報錯起來供后面使用。個人認證信息將報錯到$HOME/ .dockercfg文件中.

      用 commit 命令創(chuàng)建鏡像

      可以想象是往版本控制系統(tǒng)里提交變更:首先創(chuàng)建一個容器,并在容器里做修改,就行修改代碼一樣,最后在講修改提交為一個新鏡像。

      創(chuàng)建一個新容器命令:

      sudo docker run -i -t ubuntu /bin/bash

      或者之前創(chuàng)建好的myubuntu容器:

      sudo docker start myubuntu

      sudo docker attach myubuntu

      注意:

      docker run 后面指定的是一個鏡像、而docker start指定的是一個容器、docker run是利用鏡像生成容器,并啟動容器,而docker start是啟動一個之前生成過的容器

      因為ubuntu官方鏡像中沒有軟件包的緩存文件,使用apt-get update更新即可,也可以修改源來配置。進入myubuntu之后,然后安裝ssh。

4

5

      運行ssh需要目錄/var/run/sshd存在,創(chuàng)建啟動服務(wù)

      mkdir -p /var/run/sshd/usr/sbin/sshd -D &

      然后可以看到已經(jīng)運行,netstat命令可能也沒有,安裝即可apt-get install net-tools

6

      然后復(fù)制需要登錄的公鑰信息(這里為本地主機)。使用ssh-keygen可以生成。

7

      復(fù)制id_rsa.pub的內(nèi)容到容器中的/root/.ssh/authorized_keys

8

      創(chuàng)建ssh服務(wù)執(zhí)行文件,然后退出容器

      vim /run.sh

      chmod +x run.sh

9

      使用docker commit保存修改的容器,然后運行

      docker commit CONTAINER ID ssh:ubuntu

      docker run -d -p :22 ssh:ubuntu /run.sh

10

      最后可以在宿主機上通過隨機生成的32768端口來訪問登錄容器了:

      使用dockerfile創(chuàng)建鏡像

      創(chuàng)建一個目錄sshd_ubuntu,分別創(chuàng)建文件如下:

11

      以上就是docker框架的鏡像創(chuàng)建方法了,下一期我們繼續(xù)介紹dockerfile的創(chuàng)建方法,如果你對Python來發(fā)感興趣的話不妨來千鋒Python培訓(xùn)班了解一下我們的Python培訓(xùn)課程,現(xiàn)在咨詢還能免費領(lǐng)取Python學(xué)習(xí)資料,千萬不要錯過了。

tags:
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
汽車行業(yè)什么工作會用到MATLAB?

MATLAB在汽車行業(yè)的應(yīng)用MATLAB是一種用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析和數(shù)值計算的高級語言和交互式環(huán)境。在汽車行業(yè)中,MATLAB的應(yīng)用非常廣...詳情>>

2023-10-14 02:45:08
紅帽RHEL8和7有什么區(qū)別?

一、軟件包管理器的區(qū)別軟件包管理器是操作系統(tǒng)中管理軟件包的工具,RHEL 8和7在軟件包管理器方面有一些重要的區(qū)別:RHEL 8采用了新的軟件包管...詳情>>

2023-10-14 02:41:24
什么是軟件即服務(wù)(SaaS)?

一、軟件即服務(wù)(SaaS)的定義軟件即服務(wù)(SaaS)是一種基于云計算的軟件交付模式,用戶可以通過訂閱或按需使用這些應(yīng)用程序。在傳統(tǒng)模式下,軟...詳情>>

2023-10-14 02:39:43
oracle怎么樣實現(xiàn)數(shù)據(jù)庫跨機房同步?

一、oracle怎么樣實現(xiàn)數(shù)據(jù)庫跨機房同步除了使用第三方工具,Oracle提供了extended cluster可以實現(xiàn)類似的功能,使用Oracle RAC + ASM。簡單說下...詳情>>

2023-10-14 01:57:43
web網(wǎng)站性能測試的常用指標(biāo)有哪些?

一、頁面加載時間頁面加載時間是衡量網(wǎng)站性能的重要指標(biāo)之一,它指的是從用戶請求一個頁面到頁面完全加載完成所需的時間。頁面加載時間的長短直...詳情>>

2023-10-14 01:50:34