欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker構建鏡像的兩種方式實現(xiàn)

 更新時間:2021年09月27日 15:37:42   作者:我在北國不背鍋  
從 docker 鏡像倉庫中下載的鏡像不能滿足我們的需求時,可以通過以下兩種方式對鏡像進行更改。本文就詳細的介紹了這兩種方法,感興趣的可以了解一下

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

  • 從已有鏡像更新鏡像
  • 從零開始構建鏡像

從已有鏡像更新鏡像:

更新鏡像之前,我們需要使用鏡像來創(chuàng)建一個容器。

在這里插入圖片描述

進入容器:

docker run -t -i db2b37ec6181 /bin/bash

在運行的容器內使用 apt-get update 命令進行更新。在完成操作之后,輸入 exit 命令來退出這個容器。
此時 ID 為 0aab061e6f5a的容器,是按我們的需求更改的容器。我們可以通過命令 docker commit 來提交容器副本。

在這里插入圖片描述

[root@localhost .ssh]# docker commit -m="has update" -a="zyn" 0aab061e6f5a mysql:v2
sha256:3dda266fd05963e816f22e3dec2584589977e040f7202e0421b0151290e4f54b

以上命令各個參數(shù)說明:

-m: 提交的描述信息
-a: 指定鏡像作者
0aab061e6f5a:容器 ID
mysql:v2: 指定要創(chuàng)建的目標鏡像名

我們可以使用 docker images 命令來查看我們的新鏡像 mysql:v2:

在這里插入圖片描述

從零開始構建鏡像:

使用命令 docker build , 從零開始來創(chuàng)建一個新的鏡像。為此,需要創(chuàng)建一個 Dockerfile 文件,其中包含一組指令來告訴 Docker 如何構建我們的鏡像。

例如我們將一個jar包構建出docker鏡像:

首先創(chuàng)建Dockerfile文件:

FROM java:8
MAINTAINER zyn
COPY jenkins.war /usr/local/jenkins.war
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "/usr/local/jenkins.war","--httpPort=8080"]

以上命令各個參數(shù)說明:

java:8就是剛下載的基礎鏡像
MAINTAINER是作者
COPY是把本地的jar拷貝到鏡像中
EXPOSE聲明鏡像開放的接口
ENTRYPOINT 是指定在docker run時的命令參數(shù),類似的還是RUN和CMD命令

每一個指令都會在鏡像上創(chuàng)建一個新的層,每一個指令的前綴都必須是大寫的。

然后將jar放到與Dockerfile同級目錄下:

在這里插入圖片描述

最后,我們使用 Dockerfile 文件,通過 docker build 命令來構建一個鏡像:

注意:Dockerfile后面的點指的是把當前目錄作為上下文目錄,創(chuàng)建鏡像時,會把上下文目錄的文件拷貝到鏡像中,也就是把jar包拷貝到鏡像中

[root@localhost zyn]# docker build -t my_jenkins:1.0 -f Dockerfile .
Sending build context to Docker daemon  67.29MB
Step 1/5 : FROM java:8
8: Pulling from library/java
5040bd298390: Pull complete
fce5728aad85: Pull complete
76610ec20bf5: Pull complete
60170fec2151: Pull complete
e98f73de8f0d: Pull complete
11f7af24ed9c: Pull complete
49e2d6393f32: Pull complete
bb9cdec9c7f3: Pull complete
Digest: sha256:c1ff613e8ba25833d2e1940da0940c3824f03f802c449f3d1815a66b7f8c0e9d
Status: Downloaded newer image for java:8
 ---> d23bdf5b1b1b
Step 2/5 : MAINTAINER zyn
 ---> Running in d8027d9002f4
Removing intermediate container d8027d9002f4
 ---> cdd9362868cb
Step 3/5 : COPY jenkins.war /usr/local/jenkins.war
 ---> 3a276d766222
Step 4/5 : EXPOSE 8080
 ---> Running in 99cf28fb33a8
Removing intermediate container 99cf28fb33a8
 ---> de89b785c80d
Step 5/5 : ENTRYPOINT ["java", "-jar", "/usr/local/jenkins.war","--httpPort=8080"]
 ---> Running in c3a7e16eaa11
Removing intermediate container c3a7e16eaa11
 ---> 5107b1256f01
Successfully built 5107b1256f01
Successfully tagged my_jenkins:1.0

在這里插入圖片描述

啟動以上的docker鏡像:

[root@localhost zyn]# docker run -itd --name jenkins -p 18080:8080 my_jenkins:1.0
5e185bb8e4866b8018f0b3bb7a4845360d3d4efc5bd2509d84fe118929fe52b3

在這里插入圖片描述

到此這篇關于Docker構建鏡像的兩種方式實現(xiàn)的文章就介紹到這了,更多相關Docker構建鏡像內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Docker?制作tomcat鏡像并部署項目的步驟

    Docker?制作tomcat鏡像并部署項目的步驟

    這篇文章主要介紹了Docker?制作tomcat鏡像并部署項目?,講解如何制作自己的tomcat鏡像,并使用tomcat部署項目,需要的朋友可以參考下
    2022-10-10
  • Docker如何制作自己鏡像并上傳dockerhub

    Docker如何制作自己鏡像并上傳dockerhub

    這篇文章主要介紹了Docker如何制作自己鏡像并上傳dockerhub,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • Docker占滿磁盤空間的問題解決辦法

    Docker占滿磁盤空間的問題解決辦法

    本篇文章主要介紹了Docker占滿磁盤空間的問題解決辦法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • Docker上實現(xiàn)Redis集群搭建

    Docker上實現(xiàn)Redis集群搭建

    redis集群對于很多人來說非常熟悉,雖然集群搭建的文章在網(wǎng)上很多,但是今天給大家介紹的是在docker上實現(xiàn)Redis集群搭建,感興趣的可以了解下
    2021-05-05
  • docker在Linux環(huán)境下的安裝教程

    docker在Linux環(huán)境下的安裝教程

    這篇文章主要介紹了docker在Linux環(huán)境下的安裝教程,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-11-11
  • docker快速安裝使用kibana流程

    docker快速安裝使用kibana流程

    這篇文章主要為大家介紹了docker快速安裝使用kibana詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • Docker可視化工具Portainer的具體使用

    Docker可視化工具Portainer的具體使用

    Portainer是Docker的可視化工具,可提供一個交互界面顯示Docker的詳細信息供用戶操作,本文主要介紹了Docker可視化工具Portainer的具體使用,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2024-06-06
  • CentOS7上安裝Docker的詳細步驟

    CentOS7上安裝Docker的詳細步驟

    Docker?是一個開源工具,它可以讓創(chuàng)建和管理?Linux?容器變得簡單,容器就像是輕量級的虛擬機,并且可以以毫秒級的速度來啟動或停止,下面這篇文章主要給大家介紹了關于CentOS7上安裝Docker的詳細步驟,需要的朋友可以參考下
    2022-01-01
  • 詳解如何使用Docker打包Python項目

    詳解如何使用Docker打包Python項目

    Docker是一種開源的容器化平臺,可以將應用程序及其依賴項打包到一個輕量級、可移植的容器中,通過使用Docker,可以簡化Python項目的部署和運行,提高開發(fā)效率和應用程序的可移植性,本文將介紹如何使用Docker來打包Python項目,需要的朋友可以參考下
    2023-11-11
  • 聊聊docker?單機部署redis集群的問題

    聊聊docker?單機部署redis集群的問題

    這篇文章主要介紹了docker?單機部署redis集群,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03

最新評論