簡(jiǎn)介Docker
簡(jiǎn)單來(lái)說(shuō),docker是一種類似于虛擬機(jī)的虛擬技術(shù)。
但它們的不同之處在于,虛擬機(jī)占用了完全獨(dú)立的內(nèi)存,cpu,硬盤(pán)等資源,而docker只提供了完全獨(dú)立的進(jìn)程,而與其它進(jìn)程公用計(jì)算機(jī)處理資源,在某種意義上來(lái)說(shuō),docker以更簡(jiǎn)單方便的方法實(shí)現(xiàn)了類似于虛擬機(jī)的體驗(yàn)效果,并且docker還提供了便捷的使用方法
眾所周知,配置環(huán)境往往是很花時(shí)間的,今天我們要做的就是利用docker來(lái)有效、快速地搭建java運(yùn)行方法。
安裝Docker
見(jiàn)知乎大佬文章:如何在 Ubuntu 上安裝 Docker | Linux 中國(guó)
正式開(kāi)始
1.創(chuàng)建dockerfile文件和Hello.java測(cè)試文件
假設(shè)我們此時(shí)在~/download/docker目錄下
vim dockerfile
新建一個(gè)文件dockerfile,寫(xiě)入
# 使用基礎(chǔ)鏡像為 OpenJDK 11
FROM openjdk:11
# 設(shè)置工作目錄
WORKDIR ~/download/docker
# 將 Java 代碼復(fù)制到容器中
COPY Hello.java . #"·"代表當(dāng)前目錄下
# 編譯 Java 代碼
RUN javac Hello.java
# 設(shè)置容器啟動(dòng)命令
CMD ["java", "Hello"]
在這個(gè)示例中,我們使用了 OpenJDK 11 作為基礎(chǔ)鏡像,將 Hello.java
文件復(fù)制到容器的工作目錄,并在容器中編譯和運(yùn)行 Java 代碼。
其中,你可以把Hello.java和其文件地址改成你想要編譯運(yùn)行的java文件
在~/download/docker里面添加一個(gè)用于測(cè)試的Hello.java文件
vim Hello.java
寫(xiě)入
public class Hello { //注意java語(yǔ)法格式,文件名與類名同
//主方法入口
public static void main(String[] args){ //String[] args和String args[]都可以執(zhí)行
System.out.println("Hello, World!"); // 輸出 Hello, World!
System.exit(0);
}
}
文件結(jié)構(gòu)如下圖
2.構(gòu)建docker鏡像,運(yùn)行docker容器
此時(shí)確保我們還是在~/download/docker目錄下
構(gòu)建docker鏡像——執(zhí)行完這一步后會(huì)開(kāi)始執(zhí)行dockerfile內(nèi)的所有內(nèi)容,如果報(bào)錯(cuò)了請(qǐng)去檢查dockerfile是否寫(xiě)對(duì)了
docker build -t my-java-app . #有個(gè)"."別看漏,代表在當(dāng)前目錄下
docker build -t my-java-app ~/download/docker
運(yùn)行docker容器——文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-791127.html
docker run my-java-app #上下名稱保持一致:my-java-app
運(yùn)行結(jié)果,十分鐘搭建好java環(huán)境,快去試試吧文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-791127.html
到了這里,關(guān)于如何利用Docker快速搭建一個(gè)支持java程序運(yùn)行的環(huán)境(Ubuntu環(huán)境下)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!