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

Dockerfile運行Tomcat實踐

 更新時間:2025年08月20日 09:29:34   作者:Agome99  
本文介紹Dockerfile的作用、結(jié)構(gòu)及使用步驟,包括創(chuàng)建JDK容器的完整流程,強調(diào)精簡鏡像和選擇合適基礎(chǔ)鏡像的重要性,并附帶SecureCRT文件傳輸方法

1 dockerfile

dockerfile 是一個文本格式的配置文件, 用戶可以使用 Dockerfile 來快速創(chuàng)建自定義的鏡像,

另外,使用Dockerfile去構(gòu)建鏡像好比使用pom去構(gòu)建maven項目一樣,有異曲同工之妙

2 dockerfile基本結(jié)構(gòu)

Dockerfile 由一行行命令語句組成, 并且支持以#開頭的注釋行,一般而言, Dockerfile 主體內(nèi)容分為四部分:

基礎(chǔ)鏡像信息、 維護者信息、 鏡像操作指令和容器啟動時執(zhí)行指令。

部分命令
基礎(chǔ)鏡像信息FROM
維護者信息MAINTAINER
鏡像操作指令RUN、(COPY/ADD)、EXPOSE、WORKDIR、ONBUILD、USER、VOLUME 等
容器啟動時執(zhí)行指令CMD、ENTRYPOINT

注1:各命令的詳細使用見:資料01和02

3 docker使用Dockerfile創(chuàng)建jdk容器

啟動虛擬機,進入CentOS

3.1 創(chuàng)建文件夾上傳jdk的安裝包,和在同級目錄下編寫Dockerfile文件

$ mkdir –p /zking/java

# 注意d是大寫
$ touch Dockerfile

將jdk-8u221-linux-x64.tar.gz上傳到Linux或者使用cp命令復(fù)制一個本地已經(jīng)有的jdk-8u221-linux-x64.tar.gz文件到指定目錄中

$ cp /lky/tools/jdk-8u221-linux-x64.tar.gz /zking/java

3.2 編寫 Dockerfile 文件 

3.2.1 vi Dockerfile進入編輯模式 

  • :wq #退出并保存文件
  • :q! #退出不保存文件
  • 按i鍵進入insert編輯模式

3.2.2 指定基礎(chǔ)鏡像,并且必須是第一條指令 

FROM centos:latest

3.2.3 指明該鏡像的作者和其電子郵件

MAINTAINER zs "zs@qq.com"

3.2.4 在構(gòu)建鏡像時,指定鏡像的工作目錄,之后的命令都是基于此工作目錄,如果不存在,則會創(chuàng)建目錄

3.2.5 一個復(fù)制命令,把jdk安裝文件復(fù)制到鏡像中,語法:ADD <src>... <dest>,注意:jdk*.tar.gz使用的是相對路徑

ADD jdk-8u151-linux-x64.tar.gz /zking/java/

注:如果在宿主機的當(dāng)前路徑下,文件直接使用相對路徑即可;

3.2.6 配置環(huán)境變量

ENV JAVA_HOME=/zking/java/jdk1.8.0_151
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH

#容器啟動時需要執(zhí)行的命令
#CMD ["java","-version"]

3.3 執(zhí)行Dockerfile文件,初次依賴鏡像的時候會下載相應(yīng)鏡像

docker build -t jdk8:v1.0 .

注1:-t jdk8:v1.0 給新構(gòu)建的鏡像取名為 jdk8, 并設(shè)定版本為v1.0

注2:注意最后有個點,代表使用當(dāng)前路徑的 Dockerfile 進行構(gòu)建

3.4 查看鏡像

docker images

3.5 創(chuàng)建并啟動容器

docker run -it jdk8:v1.0 /bin/bash

3.6 檢查是否有問題

javac

4 dockerfile實踐經(jīng)驗

1. 精簡鏡像用途:盡量讓每個鏡像的用途都比較集中單一,避免構(gòu)造大而復(fù)雜、多功能的鏡像

2. 選用合適的基礎(chǔ)鏡像:容器的核心是應(yīng)用,選擇過大的父鏡像(如CentOS系統(tǒng)鏡像)會造成最終生成應(yīng)用鏡像的臃腫,

推薦選用瘦身過的應(yīng)用鏡像或者較為小巧的系統(tǒng)鏡像(alpine)

附錄一:SecureCRT上傳文件到Linux服務(wù)器上

1. 輸入rz命令,看是否已經(jīng)安裝了lrzsz,如果沒有安裝則執(zhí)行 apt install lrzsz -y 命令進行安裝。

2. 安裝成功后,輸入rpm命令確認是否正確安裝

3. 使用 rz -y命令進行文件上傳,此時會彈出上傳的窗口

還可以通過sz下載文件

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • OpenWRT如何解決Docker空間不足的問題

    OpenWRT如何解決Docker空間不足的問題

    由于OpenWRT成品機的磁盤未完全分配,導(dǎo)致Docker空間不足,通過OpenWRT系統(tǒng)的磁盤管理創(chuàng)建新的ext4分區(qū),并將Docker運行路徑修改至該分區(qū),可以有效解決空間問題,具體步驟包括在OpenWRT創(chuàng)建分區(qū),終端操作創(chuàng)建文件夾,修改Docker的daemon.json文件及Docker根目錄配置
    2024-10-10
  • docker中容器的網(wǎng)絡(luò)配置常用命令詳解

    docker中容器的網(wǎng)絡(luò)配置常用命令詳解

    這篇文章主要介紹了docker中容器的網(wǎng)絡(luò)配置常用命令詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 解決Docker容器異常退出Exit(253)問題

    解決Docker容器異常退出Exit(253)問題

    這篇文章主要介紹了解決Docker容器異常退出Exit(253)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 利用docker搭建php7和nginx運行環(huán)境全過程(官方鏡像)

    利用docker搭建php7和nginx運行環(huán)境全過程(官方鏡像)

    docker提供了在服務(wù)端分布式的部署應(yīng)用,這樣的好處是方便維護和升級。下面這篇文章主要給大家介紹了利用docker搭建php7和nginx運行環(huán)境的相關(guān)資料,搭建過程中運用的是官方鏡像,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-05-05
  • Windows10系統(tǒng)下docker安裝指南以及踩坑解決

    Windows10系統(tǒng)下docker安裝指南以及踩坑解決

    這篇文章主要給大家介紹了關(guān)于Windows10系統(tǒng)下docker安裝指南以及踩坑解決的相關(guān)資料,相信大家都知道Docker有很多種安裝的選擇,其中支持最好的是Ubuntu系統(tǒng),而且docker如果想在windows上運行必須借助docker-machine,需要的朋友可以參考下
    2023-08-08
  • 阿里云部署Docker私有鏡像倉庫的實現(xiàn)步驟

    阿里云部署Docker私有鏡像倉庫的實現(xiàn)步驟

    本文主要介紹了阿里云部署Docker私有鏡像倉庫的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • Docker容器進行健康檢查的三種方式

    Docker容器進行健康檢查的三種方式

    這篇文章主要介紹了如何對Docker容器進行健康檢查,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • docker run -v 掛載數(shù)據(jù)卷異常,容器狀態(tài)一直是restarting的解決

    docker run -v 掛載數(shù)據(jù)卷異常,容器狀態(tài)一直是restarting的解決

    這篇文章主要介紹了docker run -v 掛載數(shù)據(jù)卷異常,容器狀態(tài)一直是restarting的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • idea使用docker插件一鍵部署項目的操作方法

    idea使用docker插件一鍵部署項目的操作方法

    這篇文章主要介紹了idea使用docker插件一鍵部署項目的操作方法,本文通過圖文實例相結(jié)合給大家介紹的非常詳細,感興趣的朋友一起看看吧
    2025-04-04
  • 使用docker啟動redis守護進程的詳細流程

    使用docker啟動redis守護進程的詳細流程

    在現(xiàn)代軟件開發(fā)中,緩存和消息隊列是提高應(yīng)用性能和擴展性的關(guān)鍵,Redis 是一種流行的內(nèi)存數(shù)據(jù)結(jié)構(gòu)存儲系統(tǒng),使用 Docker 容器化技術(shù)可以方便地部署和管理 Redis 服務(wù),本文給大家介紹了使用docker啟動redis守護進程的詳細流程,需要的朋友可以參考下
    2025-01-01

最新評論