docker容器 最簡單的java演示例項
由於本文章主要是為了方便自己以後複習可用,所以,寫的很簡單,很多省略的步驟都可在網上找到,這裡不多細說,請見諒
演示環境:Macpro book(uninx系統)
1.首先確定本機已經安裝好docker容器等軟體,即控制檯中,輸入 docker version,就有docker的版本出現
2.在當前登入使用者可操作的情況下,建立一個目錄資料夾
mkdir -p /Users/dockerdemo/app (/Users 是當前登入賬戶可以建立檔案的許可權),當然你可以建立在臨時目錄下,/tmp,不過重新開機,該目錄將不會存在
3.切換到建立的app目錄中,新建一個main函式的java類,
cd /Users/dockerdemo/app (切換目錄)
touch Hello.java(建立java檔案)
sudo vi Hello.java(直接vi 可能需要許可權,取決你是否是root使用者,因此執行sudo,命令,輸入密碼後即可編輯,當然可以一開始就執行sudo su,直接切換到root使用者,一勞永逸)
進入到Hello.java 空白檔案中,敲入"i" 即可編輯,內容如下:
class Hello
{
public static void main(String[] args)
{
System.out.println("this is my fist docker demo for java");
}
}
敲擊 "ESC",然後輸入:wq 儲存過後,建立成功退出
再接著在當前目錄下,建立Dockerfile檔案,不用加字尾名,
touch Dockerfile
vi Dockerfile
內容如下:
FROM java:8
ADD ./Hello.java ./app/
WORKDIR /app/
RUN javac /app/Hello.java
CMD ["java","Hello"]
儲存成功後,退出
需要建立的檔案以及準備好,下面開始利用docker 建立映象檔案
輸入以下命令:
docker build -t java-app . (注意:build 是建立image的語法,-t 是取別名,tag的意思,java-app ,就是名稱,最後空格後,再加一個 . 是代表當前目錄下)
執行成功後,如果沒有報錯,即可輸入 docker images 命令,檢視是否有映象為 java-app
映象建立成功後,下面開始,利用映象,生成容器,大家可以這樣理解,其實 容器就是映象的例項化物件,
執行如下命令:docker run java-app
控制檯即會顯示,this is my first docker demo for java
注:
如果發生錯誤,多半是在dockerfile中。下面就根據我的理解解釋下,dockerfile中的語法命令
Dockerfile 中 每一行的第一個單詞都是docker中的語法關鍵字,都必須大寫
FROM 是建立image的首要條件,意思是根據指定的映象檔案生產的,案例中是FROM java:8 意思就是獲取jdk8的映象,如果發現沒有jdk8的映象,就會從docker hub倉庫中,進行下載
ADD 這是將本地的檔案新增到 docker進城中,這裡有幾個點,./Hello.java 這是本地的原始檔, 後面的是目標檔案, ./app/ app後面的“/” 一定要加,不然,它會預設是建立檔案 叫app,而不是 移到app這個目錄下面
其次,ADD 和另一個語法關鍵字,COPY ,很類似,但是 ADD 可以解壓,COPY 不可以
當ADD 將 Hello.java 新增到docker環境中,需要切換到 docker 環境app目錄下,即用WORKDIR ,
RUN 進行將Hello.java 進行編譯,
最後,CMD 進行解釋執行 java.class
即可
相關推薦
docker容器 最簡單的java演示例項
由於本文章主要是為了方便自己以後複習可用,所以,寫的很簡單,很多省略的步驟都可在網上找到,這裡不多細說,請見諒 演示環境:Macpro book(uninx系統) 1.首先確定本機已經安裝好docker容器等軟體,即控制檯中,輸入 docker version,就有doc
最簡單的hibernate例項
學習框架的方法有三步,【匯入jar包,xml配置,測試程式碼】,今天我們根據這個思路,演示一個最基本的hibernate專案,實現簡單jdbc操作 目錄 1、導包 2、程式碼配置 3、準備資料 4、開始測試 5、結果 1、導包
簡單Java程式碼例項助你通俗易懂的理解什麼是裝飾(者)設計模式 (Decorator)
首先拋開到處都有的文字概念。來看下面的例子。 現在以:人吃飯。這個需求為例。來講解這個設計模式。 1.0:想當年,人們都比較樸實。吃飯就是簡簡單單的吃飯。 那麼PersonBefore類裡面一個簡單的
【WCF】最簡單的WCF例項
WHAT?什麼是WCF? WCF(Windows Communication Foundation)是由微軟開發的一系列支援資料通訊的應用程式框架,最初簡單的理解就是在A處
最簡單的json例項
<html> <script>var my_json='{FBI:[{name:"rose",age:"25"},{name:"jack",age:"23"}],NBA:[{name:"tom",sex:"man"},{nam
Docker容器的簡單操作及應用部署
1.什麼是虛擬化 虛擬化(Virtualization)是一種資源管理技術 ,虛擬化技術種類很多,例如:軟體虛擬化、硬體虛擬化、記憶體虛擬化、網路虛擬化(vip)、桌面虛擬化、服務虛擬化、虛擬機器等等 。 2.什麼是Docker Docke
[.Net碼農]MVC——入門+最簡單的小例項
MVC全名是Model View Controller,是模型(model)-檢視(view)-控制器(controler)的縮寫,一種軟體設計典範,用於組織程式碼用一種業務邏輯和資料顯示分離的方法。 1.最上面直接面向用戶的"檢視層"(View)。它是提供
Docker容器實戰-簡單使用
一、hello-world 在之間CentOS安裝的時候,我們運行了hello-world第一個容器,hello-world是Docker官方推薦的第一個學習映象,它的功能就是簡單的輸出一段日誌在終端上。 Docker是基於Linux核心的N
執行最簡單的Docker容器hello-world
一 實戰 [[email protected] ~]# systemctl start docker [[email protected] ~]# docker run hello-world Unable to find image 'hello-wo
ALV OO: 最簡單的ALV OO例項-Docking容器
執行效果: 步驟: 1.新建100螢幕 螢幕邏輯流: PROCESS BEFORE OUTPUT. MODULE STATUS_0100. MODULE INIT_CON. PROCESS AFTER INPUT. MODULE USER_EXIT_0100 A
java語言搭建SSL的Socket併發送字串訊息(最簡單應用例項/常見異常及解決)
我看了幾篇微博,有的非常詳實,作為深入學習資料非常好。 但是有的說是例項吧...無關測試程式碼太多,感覺就是畫蛇添足。各種祕鑰庫管理感覺都是非必要的。 索性自己寫一個。順便記錄一些常見的異常,如: Cannot recover key certificate_unkno
最簡單的視音頻播放演示樣例7:SDL2播放RGB/YUV
pro big 更新 沒有 opaque support 解決 控制 mem =====================================================最簡單的視音頻播放演示樣例系列文章列表:最簡單的視音頻播放演示樣例1:總述最簡單的視音
Java對數組的操作(三)—比較兩個數組中的元素是否同樣的最簡單方法
con data println test popu pan equal main spa 呵呵呵,實現Java比較兩個數組中的元素是否同樣的功能你是怎麽做的?看以下最簡單方法: import java.util.Arrays;
神級Java程序員 開車教你基礎開發,最簡單 微型Java Web框架
padding ont 目的 簡單 json 破解 apach java學習 web 介紹: 它是Java中的開放源代碼(Apache License)微型Web框架,具有最小的依賴性和快速的學習曲線。 該項目的目標是在Java中創建一個易於使用和破解的微型Web框架。
Docker 最常用的監控方案 - 每天5分鐘玩轉 Docker 容器技術(78)
ida 9.png sans 開源 健康 src 適合 nta 示例 當 Docker 部署規模逐步變大後,可視化監控容器環境的性能和健康狀態將會變得越來越重要。 在本章中,我們將討論幾個目前比較常用的容器監控工具和方案,為大家構建自己的監控系統提供參考。 首先我
Docker Swarm 中最重要的概念- 每天5分鐘玩轉 Docker 容器技術(94)
docker 教程 容器 swarm 從主機的層面來看,Docker Swarm 管理的是 Docker Host 集群。所以先來討論一個重要的概念 - 集群化(Clustering)。服務器集群由一組網絡上相互連接的服務器組成,它們一起協同工作。一個集群和一堆服務器最顯著的區別在於:集群能夠
docker創建sshd服務(最簡單)
tool latest ubunt bsp board test 服務 shee title 1、下載所需鏡像:sshd鏡像查看鏡像:$docker search sshd下載鏡像$docker pull rastasheep/ubuntu-sshd查看docker鏡像$d
Java高級特性——註解,這也許是最簡單易懂的文章了
無需 nta exce 表示 字節碼 targe 運行 bsp 綁定 java註解是jdk1.5以後新出的特性,對於它的應用非常廣泛,我們首先來看一下註解的應用,百度百科上這樣說: 我們可以看到,註解的作用有三方面: 編寫doc文檔:這個就我們很常用的 @retur
java實現一個最簡單的tomcat服務
連接數 accep print tex soc ins udp web服務 reply 1.如何啟動? main方法是程序的入口,tomcat也不例外,查看tomcat源碼,發現main是在Bootstrap 類中的; 2.如何建立連接? 要通訊,必須要建議so
棋盤覆蓋問題簡單動畫演示JAVA
opera ane temp span tcl edi ddt mov name import javax.swing.event.TableModelListener; import javax.swing.table.TableModel; public class