docker - 從安裝到部署一個web應用(go、java)__web

來源:互聯網
上載者:User

說明:
1.許可權是root,不是則先提升許可權 一:安裝docker

1.https://docs.docker.com/engine/installation/binaries/
下載docker最新版二進位tar.gz

linux下:wget https://get.docker.com/builds/Darwin/x86_64/docker-1.11.0.tgz

2.丟到 $path中

mv docker /usr/local/sbin

3.啟動

docker daemon &
二.在容器上運行tomcat

docker官方鏡像倉庫由於有牆,所以下載的很慢。目前我用的是時速雲的鏡像。

第一步:拉取鏡像到本地
docker pull index.tenxcloud.com/tenxcloud/tomcat

第二步:為鏡像添加一個別名
docker tag index.tenxcloud.com/tenxcloud/tomcat tomcat-1

第二步:啟動tomcat
docker run -p 5000:8080 --name container1 tomcat-1
如此一來,tomcat就啟動了,-p 5000:8080的意思是把容器tomcat的8080連接埠隱射到宿主機的連接埠上,這樣外網訪問5000就能訪問到我們的container1的8080 tomcat上面了.

如此一來,一個簡單的tomcat就跑起來了.

此處容器container1 和 鏡像tomcat-1,我的理解是鏡像就是一個模板,container1就是根據這個模板創造的一個真正的盆子,這個盆子裡面就跑著我們的tomcat. 所以我們可以用同一個鏡像建立許多container。 三.在tomcat上面部署我們的應用

接下來我們要部署我們的應用上去,思路是進入到container1裡面去,此時可以把container1想象為一個新的機器,我們只需要到tomcat的webapp丟war,然後重啟就行了. 1.進入容器內部

docker exec -it container2 /bin/bash 2.查看tomcat webapp路徑

/tomcat/webapps 3.傳war

把war丟到宿主機 在丟到container裡面丟到tomcat/webapps

docker cp DemoOne.war container2:tomcat/webapps

太TM驚喜了,docker本身就支援啊。。。666666. 4.重啟容器

不需要了。。。docker自動幫你部署了
5.訪問應用

至此,一個完整的docker部署tomcat及上線一個java web應用流程就走通了.
說實話,走通後才發現是這麼的簡單。之前概念上面不懂的地方這下也基本通了。
不得不說很Nice,和預想中的完全一樣,就把dokcer給你建立的container當成一個新的linux用就行啦。 使用docker部署一套應用系統

接下來部署一套完整的系統,包括如下組件:
負載平衡:Haproxy
JAVA工:tomcat
緩衝:Redis Master、Slave

流程是Java開一個restful介面,為redis寫入一個資料,
再開一個restful介面,從redis讀取一個資料。

系統結構如圖:

步驟:
1.準備java工程,並打包成war
2.拉取haproxy鏡像,並運行

//注意 --name不能放在最後,6555:80 80不可更改,是haproxy本身的連接埠docker run -d -p 6555:80 --link container2:container2 --name haproxy-1 haproxy


可以看到,haproxy已經成功實現了代理的功能.
目前的鏡像不知道為什麼不能通過修改haproxy.cfg的方式來支援,後續研究

之後再補上golang鏡像及應用部署的流程

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.