Docker(一)

(一)什么是Docker

先說(shuō)說(shuō)我的理解吧,Docker英文的意思是碼頭工人,但Docker更被認(rèn)為是集裝箱。docker是應(yīng)用程序的宿主。Docker是虛擬環(huán)境。應(yīng)用程序可以在docker中運(yùn)行。應(yīng)用程序是工作在一個(gè)虛擬的環(huán)境里的,在這個(gè)環(huán)境里,進(jìn)程ID、文件系統(tǒng)、網(wǎng)絡(luò)等等,全都是“假象”,都是Docker通過(guò)某種方式“捏造”出來(lái)的。像個(gè)集裝箱,程序只知道傻乎乎地在其中運(yùn)行,并不知道自己已經(jīng)處在Matrix之中了。通過(guò)配置不同的鏡像,配置多套不通的環(huán)境,不用擔(dān)心應(yīng)用之間會(huì)有沖突或者環(huán)境的影響。Docker的啟動(dòng)速度都非常高效。

(二)如何安裝Docker

我的服務(wù)器版本是ubuntu,就記錄下吧。


linux發(fā)行版本
  1. Docker 要求 Ubuntu 系統(tǒng)的內(nèi)核版本高于 3.10 ,查看本頁(yè)面的前提條件來(lái)驗(yàn)證你的 Ubuntu 版本是否支持 Docker。
  • uname -r
  1. 安裝最新版本Docker
  • wget -qO- https://get.docker.com/ | sh
  • 可通過(guò)docker --version查看版本
  1. 啟動(dòng)docker 后臺(tái)服務(wù)
    service docker start

(三)鏡像與容器

  1. 拉取鏡像
    docker pull centos:7.2.1511
  2. 查看鏡像
    docker images
  3. 創(chuàng)建并運(yùn)行容器
  • docker run -itd --name web centos:7.2.1511 /bin/bash
    • -i:讓容器的標(biāo)準(zhǔn)輸入保持打開(kāi)
    • -t:讓docker分配一個(gè)偽終端并綁定到容器的標(biāo)準(zhǔn)輸入上
    • -d:讓容器在后臺(tái)運(yùn)行
  1. 當(dāng)使用exit退出容器時(shí)如果沒(méi)有使用-d,那么容器就停止了。使用了-d,可以使用docker exec -it 容器ID /bin/bash
    在后臺(tái)運(yùn)行

(四)安裝jdk和tomcat

1.上傳tomcat和jdk(什么版本都行,本例子是jdk1.8和tomcat7)

  • 創(chuàng)建/usr/local/java/文件夾
  • 使用ftp上傳把tomcat和jdk到/usr/local/java/(當(dāng)然也可以你是喜歡的文件夾)


    文件
  1. 復(fù)制到dcker容器中
    命令:docker cp host_path containerID:container_path
    實(shí)例:docker cp /usr/local/java 1436737c835c: /usr/local/
  2. 解壓文件
    tar -zxvf apache-tomcat-7.0.91.tar.gz
    tar -zxvf jdk-8u131-linux-x64.tar.gz
  3. 配置jdk環(huán)境變量
  • echo -e "\n\nexport JAVA_HOME=/usr/loacl/java/jdk-8u131-linux-x64" | tee -a /etc/profile
  • echo -e "\nexport PATH=\$PATH:\$JAVA_HOME/bin" | tee -a /etc/profile
  • source /etc/profile
  1. docker commit生成一個(gè)鏡像,以便后續(xù)使用
    命令:docker commit -a '作者' -m '說(shuō)明' 容器id 鏡像名:鏡像的標(biāo)簽
    實(shí)例:docker commit -a 'jarworker' -m 'web' 1436737c835c jarworker:least

    result

  2. 啟動(dòng)tomcat后可以在容器中運(yùn)行,但無(wú)法在宿主機(jī)訪問(wèn)。這時(shí)候配置容器的連接
    命令:docker run -itd --name 容器名-p 映射宿主機(jī)端口:docker中tomcat端口 鏡像名:鏡像的標(biāo)簽 /bin/bash
    實(shí)例:docker run -itd --name web -p 80:8080 jarworker:least /bin/bash

  • -p:將容器內(nèi)部使用的網(wǎng)絡(luò)端口映射到我們使用的主機(jī)上。


    lucky
  • 紅圈說(shuō)明連接成功。

6.在容器中啟動(dòng)tomcat

good

先到這吧?。?!辛苦了。。。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容