国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - 服務器知識 - Docker學習之基于Dockerfile搭建JAVA Tomcat運行環境的方法

Docker學習之基于Dockerfile搭建JAVA Tomcat運行環境的方法

2021-01-11 23:21聶永 服務器知識

本篇文章主要介紹了Docker學習之基于Dockerfile搭建JAVA Tomcat運行環境的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下。

前言

在第一篇文字中,我們完全人工方式,一個命令一個命令輸入,實現一個java tomcat運行環境,雖然也初見成效,但很累人。如果依靠依靠腳本構建一個Tomcat容器實例,一個命令可以搞定,何樂而不為呢。好在Docker提供了Dockerfile作為構建Docker鏡像腳本,避免人們一行一行的輸入,真是善莫大焉。Dockerfile腳本可以做到隨時維護修改,即可以分享,更有利于在模板化,更不用說傳輸了,好處那是一大籮筐!

最終目的:打造一個支持SSH終端登錄、Tomcat7自動運行的Docker鏡像。

編寫一個Dockerfile

所有環境,同第一篇文字。在ubuntu下安裝好vim之后(吐槽一下,ubuntu系統內置vi命令十分難用,只好求助于vim ):

?
1
sudo vim Dockerfile

編輯一個Dockerfile文件了,下面就是具體文件內容:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# VERSION 0.0.1
# 默認ubuntu server長期支持版本,當前是12.04
FROM ubuntu
# 簽名啦
MAINTAINER yongboy "yongboy@gmail.com"
 
# 更新源,安裝ssh server
RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe"> /etc/apt/sources.list
RUN apt-get update
RUN apt-get install -y openssh-server
RUN mkdir -p /var/run/sshd
 
# 設置root ssh遠程登錄密碼為123456
RUN echo "root:123456" | chpasswd
 
# 添加orache java7源,一次性安裝vim,wget,curl,java7,tomcat7等必備軟件
RUN apt-get install python-software-properties
RUN add-apt-repository ppa:webupd8team/java
RUN apt-get update
RUN apt-get install -y vim wget curl oracle-java7-installer tomcat7
 
# 設置JAVA_HOME環境變量
RUN update-alternatives --display java
RUN echo "JAVA_HOME=/usr/lib/jvm/java-7-oracle">> /etc/environment
RUN echo "JAVA_HOME=/usr/lib/jvm/java-7-oracle">> /etc/default/tomcat7
 
# 容器需要開放SSH 22端口
EXPOSE 22
 
# 容器需要開放Tomcat 8080端口
EXPOSE 8080
 
# 設置Tomcat7初始化運行,SSH終端服務器作為后臺運行
ENTRYPOINT service tomcat7 start && /usr/sbin/sshd -D

需要注意:

  • ENTRYPOINT,表示鏡像在初始化時需要執行的命令,不可被重寫覆蓋,需謹記

  • CMD,表示鏡像運行默認參數,可被重寫覆蓋

  • ENTRYPOINT/CMD都只能在文件中存在一次,并且最后一個生效 多個存在,只有最后一個生效,其它無效!

  • 需要初始化運行多個命令,彼此之間可以使用 && 隔開,但最后一個須要為無限運行的命令,需切記!

ENTRYPOINT/CMD,一般兩者可以配合使用,比如:

?
1
2
ENTRYPOINT ["/usr/sbin/sshd"]
CMD ["-D"]

在Docker daemon模式下,無論你是使用ENTRYPOINT,還是CMD,最后的命令,一定要是當前進程需要一直運行的,才能夠防容器退出。

以下無效方式:

?
1
2
ENTRYPOINT service tomcat7 start #運行幾秒鐘之后,容器就會退出
CMD service tomcat7 start #運行幾秒鐘之后,容器就會退出

這樣有效:

?
1
2
3
ENTRYPOINT service tomcat7 start && tail -f /var/lib/tomcat7/logs/catalina.out
# 或者
CMD service tomcat7 start && tail -f /var/lib/tomcat7/logs/catalina.out

這樣也有效:

?
1
2
ENTRYPOINT ["/usr/sbin/sshd"]
CMD ["-D"]

構建鏡像

腳本寫好了,需要轉換成鏡像:

?
1
docker build -t yongboy/java7 .

-t: 為構建的鏡像制定一個標簽,便于記憶/索引等

. : 指定Dockerfile文件在當前目錄下

網速不太好,會等待很長時間。很多操作可能需要科學上網,逼得我只能一直掛著VPN,方能暢通無阻。

構建鏡像完成之后,看看運行效果:

?
1
docker run -d -p 22 -p 8080:8080 yongboy/java7

在運行命令中,還得需要顯式指定 -p 22 -p 8080:8080,否則在Docker 0.8.1版本中不會主動映射到宿主機上。據悉在Docker 0.4.8版本時,就不擔心這個問題。 或者,您要有好的方式,不妨告知于我,謝謝。

在Dockerfile中,若沒有使用ENTRYPOINT/CMD指令,若運行多個命令,可以這樣做:

 

復制代碼 代碼如下:

docker run -d -p 22 -p 8080 yongboy/java7 /bin/sh -c "service tomcat7 start && /usr/sbin/sshd -D"

 

提交/保存鏡像

創建好的鏡像,可以保存到索引倉庫中,便于下次使用(當然,我們直接共享Dockerfile,是最簡單的事情,:)) ),但畢竟鏡像可以做到開箱即用。

1、https://index.docker.io/ 注冊一個賬號,例如yongboy

2、構建鏡像

?
1
docker build -t yongboy/java7 .

上面已經構建OK的話,可省略此步。

3、登陸

?
1
docker login

4、提交到Docker索引倉庫

?
1
docker push yongboy/java7

現在可以起來喝杯熱水,出去溜達會,也不一定能夠上傳完畢,那叫一個慢啊!

上傳OK的話,可以得到類似地址:https://index.docker.io/u/yongboy/java7/

5、如何使用鏡像

?
1
docker pull yongboy/java7

剩下的步驟,就很簡單了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://www.blogjava.net/yongboy/archive/2013/12/16/407643.html

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 午夜四虎| 91九色在线 | 日韩av一区二区在线观看 | 91在线在线| 五月婷婷激情 | 日韩成人在线影院 | 亚洲男人在线天堂 | 亚洲黄色片免费观看 | 久久伊| 青草福利| 国产精品久久久久免费 | 亚洲国产精品久久久久秋霞蜜臀 | 国产综合亚洲精品一区二 | 日本视频中文字幕 | 久久久久久亚洲精品视频 | 91精品国产乱码久久久久久 | 国产精选一区二区三区不卡催乳 | 亚洲精彩视频在线 | 国产精品一卡二卡 | 狠狠影院 | 激情一区二区三区 | 日韩视频在线观看一区 | 色婷婷综合久久久中文字幕 | 欧美日韩中文字幕 | 一区二区三区四区电影 | 亚洲日韩中文字幕一区 | 亚洲精品一区二区三区在线观看 | 日韩不卡一区二区三区 | 欧美国产在线观看 | 久久综合久久久 | 精品少妇一区二区三区日产乱码 | 黄色片在线观看视频 | 国产人成精品一区二区三 | 欧美日韩中文字幕 | 日韩精品一区二区三区第95 | 免费午夜电影 | 中文字幕av在线 | 久久久久久国产免费 | 一色视频 | 久久香蕉综合 | 精品96久久久久久中文字幕无 |