Docker容器技術的初識和使用探索
與docker容器技術的第一次接觸
第一次聽說Docker,是在2015年的4月份,在貴州做客戶拜訪的時候,與另外一家軟件廠商的技術專家溝通的時候,當時對于Docker容器技術進行了初步的 但了解,但未做深入的實踐,當時的認知:相對于虛擬化技術,Docker容器技術更簡單、高效,但使用場景和廣度,在當時對于虛擬化的地位,還未撼動,但其后續的發展,還是很看好的,覺得未來肯定會形成趨勢,且會大規模的應用。
與Docker容器技術的再次會面
2018年從從業了6年多的臺資科技公司離職,最近的兩三年,主要專注于產品管理,對技術未做深入研究,但最近兩年發現一個很明顯的趨勢:技術和工具日新月異,越發的形成簡單化模式,不管是技術還是業務人員,都無需再過多關注底層的基礎工作,也就是產品管理中所講的大道至簡,從2019年開始,重新接觸和實踐當前的主流技術,包括APP、小程序、前端、中臺、后臺、數據庫、容器等,包含Flutter、-支付寶+百度等小程序、Bootstrap4.x、Python3、Spring?Boot、Spring?Cloud、Docker、Ubantu、IDEA、VS?Code、PostgreSQL、MongoDB、云計算、機器學習、數據倉庫、DevOps等,主要的學習平臺則集中在華為云、阿里云的云學院、慕課網等學習平臺。
對Docker的實踐匯總
最近的docker使用,主要是在阿里云和華為云平臺,阿里云ECS和華為云ECS,因為本身docker與其宿主云平臺及系統無依賴(安裝、啟動、關閉、移除、 、更新等命令還是在宿主環境,故會有差異,請注意區分)更,故此處直接說明所常用的操作和命令:
本文章主要的Linux環境是?Ubantu 16.4
1、下載amd64的官方最新穩定版Docker:
sudo add-apt-repository?"deb [arch=amd64] https://download.docker.com/linux/ubuntu??$(lsb_release -cs) ?stable"
安裝Docker CE版本:如果已修改鏡像地址為阿里云,則可以直接使用下述方式,如果未修改,命令為 sudo apt-get install docker-ce
sudo apt-get install docker
安裝docker.io
sudo apt-get install docker.io
2、創建docker組,防止每次都要用sudo命令執行docker命令:
sudo groupadd docker
將當前用戶加入到組內:${USER}?不用修改,是直接取值的寫法
sudo gpasswd -a ${USER} docker
3、重啟docker:
sudo service docker restart
4、安裝Tomcat容器:
查找Tomcat鏡像:? docker search tomcat
拉取最新的鏡像:????docker pull ?docker.io/tomcat
查看當前所有鏡像:??docker?images
啟動Tomcat容器:? ?docker run -p 8080:8080 docker.io/tomcat
Tomcat服務掛載:? ?docker run -d -v /opt/software/xxxx.net.cn:/usr/local/tomcat/webapps -p 8080:8080 docker.io/tomcat
Tomcat配置掛載:? ??docker run -d -v /opt/software/tomcat-conf:/usr/local/tomcat/conf? -p 80:80?docker.io/tomcat
制作Tomcat鏡像:包括dockerFile和run.sh兩部分
(1)dockerFile
FROM ubuntu:16.04
MAINTAINER cc-man
#上傳
ADD tomcat-website /opt/tomcat
COPY /run.sh /root/run.sh
RUN? chmod 777 /root/run.sh
ENTRYPOINT ["/root/run.sh"]
(2)run.sh
#!/bin/bash
sh /opt/tomcat/tomcat-website/bin/catalina.sh run
5、查看當前容器:
docker?ps? ? ? ?#當前處于啟動狀態的所有容器
docker?ps -a? ? ? #已創建的所有容器,包含退出、啟動等全部狀態
docker rm $(sudo docker ps -a -q)? ? ?#刪除所有未運行的容器(已經運行的刪除不了,未運行的就一起被刪除了)
6、文件夾復制:
docker?cp {容器ID}:/user/local/tomcat/conf? /opt/software/tomcat-conf
根據實際需要,修改完成后,直接4、中的Tomcat配置掛載,啟動即可
7、防火墻配置查看:
/sbin/iptables -L -n
其中,針對掛載啟動和制作鏡像特別說明如下:
如果是初次接觸docker,我們會直接的認為,直接進入容器,修改相關配置,然后保存,重啟容器即可,但docker不同的是,容器等同于對象實例,我們每次啟動時,都會重新從鏡像中讀取相關配置項,并創建容器,那么如果我們直接進入容器,修改相關內容,那么根本上的鏡像并沒有變化,在重啟容器后,新啟動的容器,也就不會包含之前修改的內容,這也就是掛載和制作鏡像的目的:
掛載啟動:好處是我們可以把我們需要修改或保存的關鍵信息,放置在宿主機某一目錄下,需要修改的時候,使用putty連接,或者使用FileZilla連接后,下載后修改,再上傳,保證了即使我們重啟容器,依然不受影響
鏡像制作:通常包含鏡像獲取(也可直接跳過)——制作鏡像——生成鏡像——上傳鏡像——拉取鏡像,阿里云和華為云均提供了容器鏡像服務,可以按官方文檔操作,也可以把鏡像保存在本地,但一般不建議,如果比較多,容易記混,也不利于團隊協作,對于比較常用的也可上傳到第三方鏡像,供他人使用
以上命令行,只是docker的一部分,九牛一毛,僅供大家參考,其實關鍵在于實踐,想學習docker或是掌握docker容器技術,可以多些練習,當前的云平臺中,都可以按需購買服務,每天幾塊錢或是幾十塊錢就可以了
Docker Tomcat
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。